
很多時候 npm run build
之后, index.html
文件中webpack 自動插入的 js 文件 css 文件的相對目錄總是不對,發布到服務器上之后,nginx 找不到文件。
vue-cli@3
在 vue-cli@3 中你需要為你 webpack 插入到 index.html
中 的所有文件添加一個 baseUrl
. 你需要在項目的根目錄新建一個 vue.config.js
, 添加如下內容:
...
module.exports = {
baseUrl: isProd
? '/baseXXX/'
: '/',
....
}
這里需要注意的是 dev 環境下不需要添加 baseUrl
。
vue-cli@2
針對 非 vue-cli@3 生成的項目,你如果不關心 webpack 里面是如何實現的,你只需要找到 config/index.js
, 修改其中的 build
中的 assetsPublicPath
即可。
為了驗證一下是否可行,你可以本地 build 一下,然后查看 dist/index.html
中引用的 js css 文件的路徑是否攜帶上你剛剛設置的 assetsPublicPath
即可。
而關心為啥這樣設置就可以的同學們,繼續看 build/webpack.base.conf.js
文件,

非 production
mode 下,是在config/index.js
中設置的,這里的 publicPath
默認是

總結
以上所述是小編給大家介紹的nginx 部署 vue 項目找不到js css文件的解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!