Vấn đề này AngularJS disable partial caching on dev machine đề xuất sử dụng $templateCache.removeAll()
để xóa các mẫu bộ nhớ cache. Tuy nhiên, nếu bạn chỉ muốn kích hoạt tính năng này một lần theo từng chu kỳ triển khai để có được trình duyệt của khách truy cập làm mới/cập nhật mẫu? Vấn đề của chúng tôi là một số trình duyệt không cập nhật các tệp html mẫu, chúng tôi sẽ kết thúc với CSS mới được trộn lẫn với HTML cũ. Tôi không muốn chức năng này kích hoạt mọi lúc, điều đó sẽ đánh bại điểm của các mẫu bộ nhớ cache để bắt đầu (phải không?).Rõ ràng Angular JS templateCache một lần (đối với mỗi lần triển khai)
mỗi tiêu đề câu hỏi, một cách khuyến khích để xóa $ templateCache "một lần", ví dụ một số ý tưởng tôi đã kêu lạo xạo là những gì:
- Liệu góc có một phương pháp nội bộ phát hiện nếu mẫu tập tin đã thay đổi ? Và sau đó nếu có "cập nhật" nó.
- Góc có nội bộ "phiên bản" hoặc "ngày" chúng tôi có thể so sánh và thêm một điều kiện có chức năng lửa removeAll() không?
- $ templateCache có tự biết làm mới không? Ý định của người tạo ra Angular trong việc ép templateCache là gì nếu các tệp HTML bị ràng buộc thay đổi làm thêm giờ và được phân phát cho nhiều trình duyệt.
Tôi không muốn sử dụng grunt để bổ sung chi phí công việc cho điều gì đó xảy ra theo định kỳ, cũng như không cắt mẫu tệp html thành biến. (Is this a good method for template cache busting in angular?)
Cách thay thế tôi có thể thấy chỉ đơn giản là thêm và xóa mã removeAll() theo cách thủ công, điều đó sẽ ngớ ngẩn.
hi liquified, thật tuyệt vời nếu bạn tìm được giải pháp thiết thực cho điều này! – Visualife