请问一下manifest.js什么时候去load回来的?
Opened this issue · 4 comments
donson commented
我看到源代码是:
var remoteManifest = (data.localcache && data.localcache.manifest) || {}
但你个部署时是用了:
var remoteManifest = require("manifest");
且:
map: [[/(v4\/manifest.js)$/i, "$1?v=" + Math.random().toString().substr(10)]]
我想问一下这样做,
var remoteManifest = (data.localcache && data.localcache.manifest) || {}
是不是想用户在config里配置manifest?
QzoneTouch commented
远端manifest设计里是通过config传递的,但是你完全可以稍微修改代码,让插件自己去拉取manifest。看实际应用场景。
设计config传递是用于manifest内容跟随页面一起输出的情况。
donson commented
嗯嗯,我这边也是自己拉取manifes�t适合一点。
还请教个问题,manifest文件的内容,你们应该也是自动生成的吧,比如用 grunt 生成md5版本?
woc2006 commented
是手工填的,有改成自动生成的计划。
donson commented
@woc2006 我已经改成自动生成了,用了grunt的一个插件:https://npmjs.org/package/grunt-cachebuster
cachebuster: {
options: {
basedir: '../common/js',
length: 10,
formatter: function(hashes) {
var output = "define('apm/manifest', [], function(){ var mod = ";
output += JSON.stringify(hashes);
output += ";var manifest = {}; for(var key in mod){ manifest['http://m.aipai.com/mobile/common/js/'+key] = mod[key] }; return manifest; });";
return output;
}
},
mobile: {
src: ['../common/js/mobile/**/*.js', '../common/js/apm/*.js'],
dest: '../common/js/apm/manifest.js'
}
}