未显示模板文件中的更改

时间:2014-11-26 13:46:46

标签: javascript angularjs angularjs-directive

我有一个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服务器的静态文件提供。

2 个答案:

答案 0 :(得分:0)

您需要强制编译指令以适应指令所包含的包含的更改。确保在指令定义对象中有compile定义,它返回带有更新指令的更新链接函数。

答案 1 :(得分:0)

我必须手动清除缓存。在Firefox中,转到首选项 - >隐私 - >清除您最近的历史记录并仅选择“缓存”(除非您要清除Cookie,地址等)。

似乎虽然我禁用了缓存,但这些模板已经在缓存中,因此firefox不会更新缓存,但仍使用缓存模板。在我看来,这是Firefox中的一个错误。

相关问题