我有一个angularjs指令'advertiser-row-directive'
,它使用一个名为'advertiser-row'
的模板(在不同的文件中,它很长)。模板本身包含另一个部分ng-include
,用于显示一些名为'group-row.html'
的数据。每个广告客户行都有多个组行,范围是广告商项目。
当我在advertiser-row.html
浏览器中更改某些内容(Firefox dev版本,但在Chrome上也尝试过)时,不会重新加载更改后的模板。只有当我更改指令本身而不是模板advertiser-row.html
模板时,才会更新,但即使这样,使用的group-row.html
模板仍然是缓存模板。
我已将浏览器设置为禁用缓存,我使用“重新加载”,仍然没有用。我认为这是由于angularjs本身的一些缓存机制,但我不知道如何在开发时禁用它。
如何确保我的模板在开发过程中始终更新?顺便说一句,对于开发,我将我的应用程序作为Django服务器的静态文件提供。
答案 0 :(得分:0)
您需要强制编译指令以适应指令所包含的包含的更改。确保在指令定义对象中有compile
定义,它返回带有更新指令的更新链接函数。
答案 1 :(得分:0)
我必须手动清除缓存。在Firefox中,转到首选项 - >隐私 - >清除您最近的历史记录并仅选择“缓存”(除非您要清除Cookie,地址等)。
似乎虽然我禁用了缓存,但这些模板已经在缓存中,因此firefox不会更新缓存,但仍使用缓存模板。在我看来,这是Firefox中的一个错误。