请教一下webpack的runtime内联到html会导致所有的html都发生变化这个怎么解决呢?如果不内联,生成json文件,又如何去引入比较好呢?如何恰当的处理manifest中的runtime部分:{"0":"js/0.840dc3db.js","common":"js/common.50055e90.js","detail":"js/detail.dd333b62.js","guide":"js/guide.c4b3b04b.js","income":"js/income.44979f51.js","index":"js/index.fdb1e05e.js","recharge":"js/recharge.27970e83.js","room":"js/room.c000bd07.js","test":"js/test.eccd512f.js"}commonchunkplugin可以生产manifest文件,内含runtime,的确是这样。但是,如果生成manifest.78sd89dsds.js形式,每次编译manifest文件都会变得,进而导致所有的html都会发生变化。如果生成manifest.js形式,html引入manifest.js就会有缓存如果,用其他插件比如inline-chunk-manifest-html-webpack-plugin,可以把runtime内联到html,但这样依然会导致每次编译后,改动一个js,所有的html都会变化如何做到修改某一个文件,无关的html不发生变化呢
2 回答
富国沪深
TA贡献1790条经验 获得超9个赞
用commonchunkplugin即可。使用commonchunkplugin生成manifest文件的目的就是充分利用缓存啊,你可以多次使用commonChunkPlugin来使得发生变化的文件最少、影响最小,如将vender单独打包,将每个功能模块的文件单独打包,以及,如果是多页面应用(非SPA),还可以使用webpack多entry等。另外,由于html文件名一般不会变化,你还需要在服务器上设置与缓存相关的HTTP响应头,使得该文件的变化能尽可能快地刷新到客户端。
添加回答
举报
0/150
提交
取消
