Bootstrap đang cố gắng tải tệp bản đồ. Làm thế nào để vô hiệu hóa nó? Tôi có cần phải làm điều đó không?


127

Gần đây tôi đang chơi với bootsrap3. Tôi đã biên dịch nó từ các nguồn và bao gồm bản phân phối js và css vào dự án của mình. Vấn đề là, tôi thấy trong công cụ nhà phát triển GH, nó đang cố gắng lấy tệp .map.css. Tại sao nó muốn làm như vậy? Làm thế nào để vô hiệu hóa nó? Tôi có cần phải tắt nó không? Để không có dấu hiệu lỗi trong các công cụ dành cho nhà phát triển, tôi đã thêm tệp bản đồ đó, sau đó tất cả các kiểu được hiển thị như chúng được xác định trong ít tệp hơn, điều này không giúp tôi nhiều.


5
Có câu trả lời nào dưới đây trả lời câu hỏi của bạn không? Nếu không, bạn có thể cập nhật câu hỏi của mình để chúng tôi có thể cải thiện câu trả lời của mình không?
Dominic Zukiewicz

Câu trả lời:


162

Xóa dòng /*# sourceMappingURL=bootstrap.css.map */khỏibootstrap.css


38
Vui lòng giải thích ngắn gọn câu trả lời của bạn để làm cho câu trả lời của bạn hữu ích hơn cho OP và các độc giả khác.
Mohit Jain

9
Tác phẩm này, nhưng nếu bootstrap được tham chiếu trực tiếp từ node_modules, khi bootstrap là tái cài đặt, điều này sẽ được ghi đè lại
Alexander

2
Chà! Hoàn toàn điên rồ ... điều này chỉ hoạt động nếu bạn "xóa" dòng (như bạn đã nói) ... bình luận ra vẫn tạo ra lỗi 404! Rất vui khi tôi tình cờ xem được bài viết của bạn!
flipflopmedia

120

Các tệp .map cho phép trình duyệt tải xuống phiên bản đầy đủ của JS thu nhỏ. Nó thực sự dành cho mục đích gỡ lỗi.

Trên thực tế, việc thiếu .map không phải là vấn đề. Bạn chỉ biết rằng nó bị thiếu, vì trình duyệt đã mở các công cụ dành cho Nhà phát triển, phát hiện một tệp đã được rút gọn và chỉ thông báo cho bạn rằng việc gỡ lỗi JS sẽ không tốt như mong đợi.

Đây là lý do tại sao các thư viện như jQuery có đầy đủ, rút ​​gọn và cả tệp bản đồ.

Xem bài viết này để biết giải thích đầy đủ về tệp .map :


1
Tải xuống chúng? Từ đâu? Tôi giả định rằng những tệp .less đó được đóng gói bằng cách nào đó bên trong tệp bản đồ. Và khi tải trang, bootrap sẽ tạo lại các tệp đó từ một gói.
dhblah

1
Từ cùng một thư mục, nó lấy .js từ. Hãy nhớ nó chỉ khi các công cụ dành cho nhà phát triển đang mở, không phải như một yêu cầu thông thường.
Dominic Zukiewicz

Cảm ơn bạn đã trả lời, nhưng tôi không có .lesstệp trong dự án của mình. Tôi chỉ thêm .css.jstệp và maptệp đó .
dhblah

1
@Raymond: Các công cụ dành cho nhà phát triển không hiểu tên tệp như .min.css - sau tất cả - chúng tôi có thể đảm bảo rằng nó đã được rút gọn không? Không .. nó sẽ tải xuống .map chỉ để đảm bảo nó có sẵn cả hai bản sao. Một lần nữa, điều này đang được kích hoạt với các công cụ dành cho nhà phát triển. Nếu bạn đóng cửa sổ công cụ, nó sẽ không được yêu cầu.
Dominic Zukiewicz

3
Để nhắc lại, tệp .map chỉ được yêu cầu và chỉ được sử dụng khi các công cụ dành cho nhà phát triển đang mở, vì vậy nếu nó bị thiếu, bạn sẽ không nhận được thêm bất kỳ yêu cầu lỗi nào khi một người dùng thông thường truy cập trang của bạn.
tomf

27

Xóa dòng /*# sourceMappingURL=bootstrap.css.map */trongbootstrap.css

Nếu lỗi vẫn còn, hãy làm sạch bộ nhớ cache của trình duyệt (CTRL + F5).


2
Câu trả lời tương tự vào hai năm sau?
Panu Haaramo

Có ích gì khi đưa ra cùng một câu trả lời mà người khác đã đưa ra nhiều năm trước? stackoverflow.com/a/23909455/1879699
Andreas

17

Xóa dòng "/*# sourceMappingURL=bootstrap.min.css.map */ "trong các tệp sau.

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

Để tìm nạp đường dẫn tệp trong Linux, hãy sử dụng lệnh find / -name "\*bootstrap\*"


Các tệp bản đồ nguồn, như bootstrap.min.css.map, được tạo tự động trong quá trình biên dịch / thu nhỏ tệp. Chúng thực sự không cần thiết cho quá trình sản xuất, nhưng đồng thời chiếm dung lượng đĩa gấp 3 lần so với dung lượng mà chúng đang ánh xạ. Đó là lý do tại sao chúng tôi không đưa chúng vào bản phát hành. Nếu bạn chỉ muốn xóa thông báo đó, bạn có thể xóa các nhận xét như / * # sourceMappingURL = bootstrap.min.css.map * / trong bootstrap.min.css, bootstrap.min.js và popper.min.js hoặc nguồn tải xuống ánh xạ các tệp từ bản phát hành Bootstrap 4.1.3 và đặt chúng bên trong thư mục libs.
Ajay Takur

17

Điều này chỉ xảy ra khi bạn sử dụng công cụ dành cho nhà phát triển và sẽ không xảy ra đối với người dùng bình thường truy cập máy chủ sản xuất.

Trong mọi trường hợp, tôi thấy hữu ích khi chỉ cần vô hiệu hóa hành vi này trong công cụ dành cho nhà phát triển : mở cài đặt và bỏ chọn tùy chọn "Bật bản đồ nguồn".

Sẽ không còn nỗ lực để truy cập các tệp bản đồ.


Tôi nghĩ đây có thể là câu trả lời phù hợp nhất. Những người khác chỉ có liên quan nếu các tệp được đề cập dưới dạng được đóng gói với ứng dụng của bạn - điều này không phải lúc nào cũng vậy.
Lukino

6

Nếu bạn không có tệp .map chính xác và bạn không muốn chỉnh sửa các dòng trong bootstrap.css, bạn có thể tạo một tệp .map giả.

Trong trường hợp của tôi, tôi đã thấy lỗi:

GET /bootstrap.css.map not found.

Vì vậy, tôi đã tạo một bootstrap.css.map trống trong thư mục / public và lỗi đã dừng lại.


1
Không hoạt động với bowerhoặc thứ gì đó tương tự vì ở chế độ sản xuất sẽ cài đặt bootstrap từ nguồn. Tương tự đối với bất kỳ câu trả lời nào có nội dung xóa dòng /*# sourceMappingURL=bootstrap.css.map */.
monteirobrena

4

Xóa / * # sourceMappingURL = bootstrap.min.css.map * / trong css / bootstrap.min.css

và xóa / * # sourceMappingURL = bootstrap.css.map * / trong css / bootstrap.css


1

Từ bootstrap.css, xóa bỏ dòng cuối cùng / * # sourceMappingURL = bootstrap-theme.css.map * /


1

Tôi cũng có cảnh báo trong Google Dev-Tools và tôi chỉ thêm tệp bootstrap.min.css.map trong cùng một thư mục, nơi có bootstrap.min.css.

Tôi hiện không có cảnh báo nào nữa và Bạn có thể tìm thêm Giải thích tại đây: https://github.com/twbs/bootstrap#whats-included

Tôi hy vọng, tôi đã trả lời Câu hỏi của bạn.


1

Đối với tôi, đã tạo bootstrap.css.map trống cùng với bootstrap.css và lỗi đã dừng lại.


1

Xóa dòng này sẽ khắc phục được sự cố, nhưng vấn đề là các tệp boostrap đang ở trong bower_componentsvà không được kiểm tra trong kiểm soát nguồn.

Vì vậy, mọi nhà phát triển trong nhóm sẽ nhận được tệp css với tham chiếu bản đồ khi họ kéo repo và thực hiện bower install(đây là một phần của việc sử dụng repo mới).

Tệp không được có tham chiếu đến bản đồ không có ở đó.


1

Được rồi Gần đây tôi gặp phải vấn đề này Tôi có giải pháp rất đơn giản để giải quyết Vấn đề này, hãy làm theo các bước sau: đi tới các thư mục này src-> app-> index.html mở index.html và tìm <base href="your app name ">thay đổi điều này thành<base href="https://stackoverflow.com/">


0

Xóa dòng cuối cùng trong bootstrap.css

folllowing lin / * # sourceMappingURL = bootstrap.css.map * /


cố gắng giải thích vấn đề và làm thế nào câu trả lời của bạn được giải pháp, thực hành tốt của nó cho phép người dùng mới để tìm hiểu những gì đã xảy ra
Pankaj Nimgade
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.