在vue項目中配置webpack


首先我們來看一下使用Vue-cli2與Vue-cli2之后的版本(這里以Vue-cli4版本為例)創建項目目錄結構的不同:

Vue-cli2(左圖)與Vue-cli4(右圖)創建項目的目錄

從上圖可以看出Vue-cli2中有static文件夾,Vue-cli4是移除了static文件夾,但新增了public文件夾,並將index.html文件移動到了public中,這是其區別之一,另外Vue-cli2創建的項目其配置文件存放在build和config文件夾中,而Vue-cli4創建的項目沒有這兩個文件夾,那是不是真的沒有了配置文件呢?當然不是,你想想如果沒有配置文件了,那項目如何能夠運行呢,其實只是將配置文件隱藏了而已。

那要如何查看配置文件呢?

配置文件隱藏在node_modules/@vue/cli-service中,打開這個文件夾,你就可以看到webpack.config.js配置文件了,但是並不推薦你在這里面進行webpack的相關配置,通常我們的做法是在項目的根目錄下創建一個vue.config.js的配置文件,在這個文件中進行webpack的配置,因為在運行項目時,會先看是否有這個文件,如果有的話會將這個文件與隱藏的配置文件合並。

下面以配置文件夾別名和配置本地服務為例:

1.配置文件夾別名

為什么要給文件夾配置別名呢?有沒有這個疑惑?首先當然是為了方便,因為在引用某個文件時需要給出其路徑,但如果路徑過長,就可能會出錯了,而且還不優雅美觀。直接貼代碼:

 1 module.exports = {
 2   configureWebpack: {
 3     // resolve是配置與路徑相關的
 4     resolve: {
 5       extensions: ['.js', '.vue', '.json'],  // 省略文件后綴名
 6       // 配置別名
 7       alias: {
 8         'assets': '@/assets',
 9         'common': '@/common',
10         'components': '@/components',
11         'network': '@/network',
12         'views': '@/views',
13       }
14     }
15   }
16 }

是不是有點疑惑@是個什么東西呢?@是代表的是src目錄的別名,在隱藏的配置文件中有這個配置。

2.配置本地服務

 1 module.exports = {
 2   configureWebpack: {
 3     // 配置本地服務器
 4     devServer: {
 5       compress: true,  // 啟用壓縮,代碼占用的空間少,在互聯網傳輸快
 6       port: 8080,  // 設置打開的端口
 7       host: '127.0.0.1',  // host
 8       hot: true,  // 熱啟動
 9       open: true,  // 瀏覽器自動打開
10       // 服務器代理,實現跨域訪問接口
11       proxy: {
12         '/api': {
13           target: '要訪問目標的地址', //接口地址
14           ws: true, //是否開啟websockets
15           changOrigin: true, //允許跨域  
16           pathRewrite: {
17             '^/api': '' //路徑重寫
18           }
19         }
20       }
21     },
22   }
23 }

注意:在配置vue.config.js后需要重新編譯,才會生效,否則就不會起作用喲。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM