【发布时间】:2015-04-30 22:23:43
【问题描述】:
我正在尝试使用 usemin 模式更新 js 文件中的模板 url,以防止版本更改时出现缓存错误。
当我将filerev 更改为关注时,它会重命名所有模板,这正是我想要的。
filerev: {
dist: {
src: [
'<%= yeoman.dist %>/scripts/**/*.js',
'<%= yeoman.dist %>/styles/**/*.css',
'<%= yeoman.dist %>/images/**/*.{png,jpg,jpeg,gif,webp,svg}',
'<%= yeoman.dist %>/styles/fonts/*',
'<%= yeoman.dist %>/views/**/*.html'
]
}
},
但即使我尝试为此配置usemin,我也无法更新网址。
usemin: {
html: ['<%= yeoman.dist %>/**/*.html'],
css: ['<%= yeoman.dist %>/styles/**/*.css'],
options: {
assetsDirs: ['<%= yeoman.dist %>','<%= yeoman.dist %>/images'],
patterns:{
js:[
[/(views\/.*?\.(html))/gm, 'Update template urls in the js files']
]
}
}
},
【问题讨论】:
-
你找到答案了吗?我也有同样的问题。
-
很遗憾,没有,我使用了一种解决方法。我使用 http 拦截器在 Angular 上设置了特定于版本的查询参数。基本上它在每个请求“?version = 313jkf1f”的url中添加了一个这样的参数。我不知道这是否理想,但它会阻止缓存新版本。
标签: angularjs gruntjs grunt-usemin