在我們使用 “npm run build” 打包Vue時,會發現文件的js和css等文件前,都會有一段隨機碼(hash碼),給部署時帶來一定的困擾
前端打包出來的效果:
打包放到後端,放多幾次後,會發現有好幾個文件:
雖然在index.html中,會自動生成好是加載哪些文件,但終究還是有的繁瑣。
原因就是打包時Vue會給文件加上一段哈希碼,用來校驗文件的,可是實際使用時我們又不會怎麼用到。
解決方法:
找到項目中的build/webpack.prod.conf.js
在圖示位置中,將箭頭所指位置修改即可
// 生成js文件時不要hash碼
filename: utils.assetsPath('js/[name].js'),
// filename: utils.assetsPath('js/[name].[chunkhash].js'),
// 生成css文件時不要hash碼
filename: utils.assetsPath('css/[name].css'),
// filename: utils.assetsPath('css/[name].[contenthash].css'),
至於其中的 chunkFilename 要不要改呢?我個人建議是不改
chunkFilename: utils.assetsPath('js/[id].[chunkhash].js')
因爲chunkFilename是何方神聖,我查閱了資料,沒有找到官方的具體說明,大概就是在生成一些臨時文件時,纔會生成這種chunkFile,那麼這些我們平時用不上,所以還是建議原生態比較好。
再次打包,文件名看起來就清爽多了。
參考鏈接: