最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

vue項目實戰(zhàn)中遇到的坑以及解決方法

來源:懂視網 責編:小采 時間:2020-11-27 20:18:55
文檔

vue項目實戰(zhàn)中遇到的坑以及解決方法

vue項目實戰(zhàn)中遇到的坑以及解決方法:坑1. 用webpack打包后訪問index.html出現資源加載404問題解決方案:config中index.js中,build對象中的assetsPublicPath屬性的層級需要由 / 調整為 './' 1 build: { 2 env: require('./prod.env'
推薦度:
導讀vue項目實戰(zhàn)中遇到的坑以及解決方法:坑1. 用webpack打包后訪問index.html出現資源加載404問題解決方案:config中index.js中,build對象中的assetsPublicPath屬性的層級需要由 / 調整為 './' 1 build: { 2 env: require('./prod.env'

坑1. 用webpack打包后訪問index.html出現資源加載404問題

解決方案:config中index.js中,build對象中的assetsPublicPath屬性的層級需要由 ‘/’ 調整為 './'

 1 build: { 2 env: require('./prod.env'), 3 index: path.resolve(__dirname, '../dist/index.html'), 4 assetsRoot: path.resolve(__dirname, '../dist'), 5 assetsSubDirectory: 'static', 6 assetsPublicPath: './', 7 productionSourceMap: false,12 productionGzip: false,13 productionGzipExtensions: ['js', 'css'],18 bundleAnalyzerReport: process.env.npm_config_report19 }
 1 dev: { 2 env: require('./dev.env'), 3 port: 8080, 4 autoOpenBrowser: true, 5 assetsSubDirectory: 'static', 6 assetsPublicPath: '/', 7 proxyTable: {}, 8 // CSS Sourcemaps off by default because relative paths are "buggy" 9 // with this option, according to the CSS-Loader README10 // ()11 // In our experience, they generally work as expected,12 // just be aware of this issue when enabling this option.13 cssSourceMap: false14 }

原因:

開發(fā)環(huán)境的static文件夾是基于根目錄的,所以直接用 ‘/’ 。例如這種格式:http://localhost:8080/static/img/logo.png。

大家應該都知道,webpack打包會自動把static文件夾打包進去,默認會生成一個dist文件夾作為生產環(huán)境文件的根目錄,在dist里面才會生成static文件夾。因此生成的格式應該為http://localhost:8080/dist/static/img/logo.png。并不是基于根目錄,所以 ‘/’ 肯定是找不到對應資源的。

介紹一下這幾個屬性的含義:

assetsRoot: webpack輸出的目標文件夾路徑

assetsSubDirectory: webpack編譯輸出的二級文件夾

assetsPublicPath: webpack編譯輸出的發(fā)布路徑,比如:www.woshichihuo.com/eat 中的 /eat就是這個路徑

坑2. 用webpack打包后本地訪問index.html出現白屏,資源加載正常

解決方案:路由設置mode不要設置為history模式,默認還是hash。router文件夾下index.js文件中。

1 const router = new Router({2 // mode: 'history',3 routes: [4 index,5 home6 ]7 })

如果需要history模式,請參考vue-router官方文檔:

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

vue項目實戰(zhàn)中遇到的坑以及解決方法

vue項目實戰(zhàn)中遇到的坑以及解決方法:坑1. 用webpack打包后訪問index.html出現資源加載404問題解決方案:config中index.js中,build對象中的assetsPublicPath屬性的層級需要由 / 調整為 './' 1 build: { 2 env: require('./prod.env'
推薦度:
標簽: VUE 解決方法 以及
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top