Angularjs 角度模板缓存-清除已更新模板的缓存
我有一个通过指令使用模板的Angular。我的一个模板有一个bug。在我修好了程序错误后,我注意到它没有使用我修复的bug文件。然后我学习了模板缓存。很好的特性,但是如何清除此更新模板的缓存Angularjs 角度模板缓存-清除已更新模板的缓存,angularjs,templates,caching,Angularjs,Templates,Caching,我有一个通过指令使用模板的Angular。我的一个模板有一个bug。在我修好了程序错误后,我注意到它没有使用我修复的bug文件。然后我学习了模板缓存。很好的特性,但是如何清除此更新模板的缓存 注意:我没有使用Angular的路线。只是通过指令访问模板。您使用的是咕噜还是咕噜 我个人使用模板缓存,它收集所有html片段/模板,并将它们放在js文件中 优点: *所有模板一次加载到一个js文件中 缺点: *每次更改html文件时,都必须重新生成模板缓存。您可以使用gulp查看html文件,每次更改某些
注意:我没有使用Angular的路线。只是通过指令访问模板。您使用的是咕噜还是咕噜 我个人使用模板缓存,它收集所有html片段/模板,并将它们放在js文件中 优点: *所有模板一次加载到一个js文件中 缺点: *每次更改html文件时,都必须重新生成模板缓存。您可以使用gulp查看html文件,每次更改某些内容时,它都会自动为您重新生成模板缓存:)
总结一下,对<代码> GULP WEB 和<代码> GLUP角模板> <代码>来解决你的问题很有意思。
作为一个扩展插件模板的URL加上一个数字,你可以考虑截取请求(所有这些)并在其中添加一个数字(版本、发布、日期等)。大概是这样的:
angular.module('my-app', []).config(function($httpProvider) {
$httpProvider.interceptors.push(function($window) {
return {
'request': function(config) {
// just yours (other libs, ie pagination might conflict with
// their own insertions)
if (!/^\/path-to-your-templates\//.test(config.url)) {
return config;
}
// pull a # from wherever you like, maybe the window - set by
// your backend layout engine?
if ($window.version) {
if (!config.params) {
config.params = {};
}
if (!config.params.v) {
config.params.v = $window.version;
}
}
return config;
}
};
});
});
谢谢我会调查的。现在我要做的是在templateURL的末尾添加一个带有随机数的后缀(例如“template.html?123”)。这可能是一个黑客,但为了让我继续下去,它的工作。