Bootstrap พยายามโหลดไฟล์แผนที่ จะปิดการใช้งานได้อย่างไร? ฉันจำเป็นต้องทำหรือไม่?


127

ฉันเพิ่งเล่นกับ bootsrap3 ฉันรวบรวมจากแหล่งที่มาและรวม distr js และ css ไว้ในโครงการของฉัน สิ่งนี้คือฉันเห็นใน GH dev tools ว่ามันพยายามรับไฟล์. map.css ทำไมถึงต้องการทำเช่นนั้น? จะปิดการใช้งานได้อย่างไร? ฉันจำเป็นต้องปิดการใช้งานหรือไม่? เพื่อไม่ให้มีเครื่องหมายข้อผิดพลาดในเครื่องมือ dev ฉันได้เพิ่มไฟล์แผนที่นั้นหลังจากนั้นรูปแบบทั้งหมดจะแสดงตามที่กำหนดไว้ในไฟล์ที่น้อยลงซึ่งไม่ได้ช่วยอะไรฉันมากนัก


5
มีคำตอบด้านล่างตอบคำถามของคุณหรือไม่? ถ้าไม่คุณสามารถอัปเดตคำถามเพื่อให้เราปรับปรุงคำตอบของเราได้หรือไม่
Dominic Zukiewicz

คำตอบ:


162

ลบบรรทัด/*# sourceMappingURL=bootstrap.css.map */จากbootstrap.css


38
โปรดอธิบายคำตอบของคุณโดยย่อเพื่อให้คำตอบของคุณมีประโยชน์มากขึ้นสำหรับ OP และผู้อ่านคนอื่น ๆ
Mohit Jain

9
สิ่งนี้ใช้งานได้ แต่หากอ้างอิง bootstrap โดยตรงจาก node_modules เมื่อติดตั้ง bootstrap ใหม่สิ่งนี้จะถูกเขียนทับกลับ
Alexander

2
ว้าว! บ้ามาก ... จะได้ผลก็ต่อเมื่อคุณ "ลบ" บรรทัด (ตามที่คุณพูด) ... การแสดงความคิดเห็นยังเกิดข้อผิดพลาด 404! ดีใจที่ฉันสะดุดกับโพสต์ของคุณ!
flipflopmedia

120

ไฟล์. map อนุญาตให้เบราว์เซอร์ดาวน์โหลดเวอร์ชันเต็มของ JS ที่ย่อขนาดได้ มีไว้เพื่อวัตถุประสงค์ในการดีบักจริงๆ

แมปที่หายไปไม่ใช่ปัญหา คุณรู้แค่ว่ามันหายไปเนื่องจากเบราว์เซอร์ได้เปิดเครื่องมือสำหรับนักพัฒนาไว้ตรวจพบไฟล์ที่ย่อขนาดและแจ้งให้คุณทราบว่าการดีบัก JS จะไม่ดีเท่าที่ควร

นี่คือสาเหตุที่ไลบรารีเช่น jQuery มีไฟล์เต็ม minified และไฟล์แผนที่ด้วย

ดูบทความนี้สำหรับคำอธิบายทั้งหมดของไฟล์. map :


1
ดาวน์โหลดไหม มาจากไหน? ฉันคิดว่าไฟล์ .less เหล่านั้นบรรจุอยู่ในไฟล์แผนที่ และในการโหลดหน้า bootrap จะสร้างไฟล์เหล่านั้นขึ้นมาใหม่จากแพ็คเกจ
dhblah

1
จากไดเร็กทอรีเดียวกันจะได้รับ. js จาก. โปรดจำไว้เฉพาะเมื่อเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์เปิดอยู่ไม่ใช่เป็นการร้องขอตามปกติ
Dominic Zukiewicz

ขอบคุณสำหรับการตอบกลับ แต่ฉันไม่มี.lessไฟล์ในโครงการ ฉันเพิ่ม.cssและ.jsไฟล์และmapไฟล์นั้นเท่านั้น
dhblah

1
@Raymond: เครื่องมือสำหรับนักพัฒนาไม่เข้าใจชื่อไฟล์เช่น. min.css หลังจากนั้นเราสามารถรับประกันได้หรือไม่ว่ามันถูกลดขนาดลง? ไม่ .. มันจะดาวน์โหลด. map เพียงเพื่อให้แน่ใจว่ามีทั้งสองสำเนา อีกครั้งกำลังเปิดใช้งานด้วยเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ หากคุณปิดหน้าต่างเครื่องมือจะไม่มีการร้องขอ
Dominic Zukiewicz

3
เพื่อย้ำอีกครั้งว่าไฟล์. map จะถูกร้องขอและใช้เฉพาะเมื่อเครื่องมือ dev เปิดอยู่เท่านั้นดังนั้นหากไม่มีอยู่คุณจะไม่ได้รับคำขอที่ล้มเหลวเพิ่มเติมเมื่อผู้ใช้ทั่วไปไปที่เพจของคุณ
tomf

27

ลบบรรทัด/*# sourceMappingURL=bootstrap.css.map */ในbootstrap.css

หากข้อผิดพลาดยังคงอยู่ให้ทำความสะอาดแคชของเบราว์เซอร์ (CTRL + F5)


2
คำตอบเดียวกันในอีกสองปีต่อมา?
Panu Haaramo

อะไรคือจุดที่ให้คำตอบเดียวกันกับคนอื่นเมื่อหลายปีก่อน? stackoverflow.com/a/23909455/1879699
Andreas

17

ลบบรรทัด"/*# sourceMappingURL=bootstrap.min.css.map */ "ในไฟล์ต่อไปนี้

  • CSS / bootstrap.min.css
  • CSS / bootstrap.css

ในการดึงเส้นทางไฟล์ใน Linux ให้ใช้คำสั่ง find / -name "\*bootstrap\*"


ไฟล์แมปต้นทางเช่น bootstrap.min.css.map ถูกสร้างขึ้นโดยอัตโนมัติในระหว่างขั้นตอนการย่อขนาดไฟล์ / การคอมไพล์ จริงๆแล้วไม่จำเป็นสำหรับการผลิต แต่ในขณะเดียวกันก็ใช้พื้นที่ดิสก์มากกว่า 3 เท่าเมื่อเทียบกับที่ใช้ในการทำแผนที่ นั่นเป็นเหตุผลที่เราไม่รวมไว้ในการเปิดตัว หากคุณต้องการลบข้อความนั้นคุณสามารถลบความคิดเห็นเช่น / * # sourceMappingURL = bootstrap.min.css.map * / ใน bootstrap.min.css, bootstrap.min.js และ popper.min.js หรือแหล่งดาวน์โหลด แม็พไฟล์จากรีลีส Bootstrap 4.1.3 และวางไว้ในไดเร็กทอรี libs
Ajay Takur

17

สิ่งนี้จะเกิดขึ้นเฉพาะเมื่อคุณใช้ dev-tools และจะไม่เกิดขึ้นสำหรับผู้ใช้ทั่วไปที่เข้าถึงเซิร์ฟเวอร์ที่ใช้งานจริง

ไม่ว่าในกรณีใดฉันพบว่ามีประโยชน์เพียงแค่ปิดใช้งานพฤติกรรมนี้ในเครื่องมือพัฒนา : เปิดการตั้งค่าและยกเลิกการเลือกตัวเลือก "เปิดใช้งานแผนที่แหล่งที่มา"

จะไม่มีความพยายามในการเข้าถึงไฟล์แผนที่อีกต่อไป


ฉันคิดว่านี่อาจเป็นคำตอบที่ตรงประเด็นที่สุด ไฟล์อื่น ๆ จะมีความเกี่ยวข้องก็ต่อเมื่อไฟล์ดังกล่าวมาพร้อมกับแอปพลิเคชันของคุณซึ่งไม่ได้เป็นเช่นนั้นตลอดเวลา
Lukino

6

หากคุณไม่มีไฟล์. map ที่ถูกต้องและไม่ต้องการแก้ไขบรรทัดใน bootstrap.css คุณสามารถสร้างไฟล์. map จำลองได้

ในกรณีของฉันฉันเห็นข้อผิดพลาด:

GET /bootstrap.css.map not found.

ดังนั้นฉันจึงสร้าง bootstrap.css.map ว่างในไดเร็กทอรี / public และข้อผิดพลาดก็หยุดลง


1
ใช้งานไม่ได้bowerหรืออะไรทำนองนั้นเพราะในโหมดการผลิตจะติดตั้ง bootstrap จากต้นทาง เดียวกันสำหรับคำตอบใด ๆ /*# sourceMappingURL=bootstrap.css.map */ที่บอกว่าจะลบเส้น
monteirobrena

4

ลบ / * # sourceMappingURL = bootstrap.min.css.map * / ในcss / bootstrap.min.css

และลบ / * # sourceMappingURL = bootstrap.css.map * / ในcss / bootstrap.css



1

ฉันมีคำเตือนใน Google Dev-Tools และฉันเพิ่มเฉพาะไฟล์ bootstrap.min.css.map ในโฟลเดอร์เดียวกันโดยที่ bootstrap.min.css คือ

ตอนนี้ฉันไม่มีคำเตือนเพิ่มเติมและคุณสามารถค้นหาคำอธิบายเพิ่มเติมได้ที่นี่: https://github.com/twbs/bootstrap#whats-included

ฉันหวังว่าฉันจะตอบคำถามของคุณ


1

สำหรับฉันสร้าง bootstrap.css.map ว่างพร้อมกับ bootstrap.css และข้อผิดพลาดหยุดลง


1

การลบบรรทัดนี้จะแก้ไขได้ แต่ปัญหาคือไฟล์ boostrap อยู่ในbower_componentsและไม่ได้ตรวจสอบในการควบคุมแหล่งที่มา

ดังนั้นนักพัฒนาทุกคนในทีมจะได้รับไฟล์ css พร้อมการอ้างอิงแผนที่เมื่อพวกเขาดึง repo และทำbower install(ซึ่งเป็นส่วนหนึ่งของการใช้ repo ใหม่)

ไฟล์ไม่ควรมีการอ้างอิงถึงแผนที่ที่ไม่มีอยู่


1

โอเคเมื่อเร็ว ๆ นี้ฉันประสบปัญหานี้ฉันมีวิธีง่ายๆในการแก้ปัญหานี้ทำตามขั้นตอนเหล่านี้: ไปที่ไดเรกทอรีเหล่านี้ src-> app-> index.htmlเปิด index.html และค้นหา <base href="your app name ">การเปลี่ยนแปลงนี้เป็น<base href="https://stackoverflow.com/">


0

ลบบรรทัดสุดท้ายใน bootstrap.css

ต่อไป lin / * # sourceMappingURL = bootstrap.css.map * /


ลองอธิบายปัญหาและวิธีแก้ปัญหาคำตอบของคุณวิธีปฏิบัติที่ดีซึ่งช่วยให้ผู้ใช้ใหม่สามารถเรียนรู้สิ่งที่เกิดขึ้น
Pankaj Nimgade
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.