Vue-cli3 搭建的項目,之所以界面想對之前較爲簡潔,因爲webpack的配置均被隱藏了,當你需要覆蓋原有的配置時,則需要在項目的根目錄下,新建vue.config.js文件,來設置新的配置。
一、創建vue.config.js
vue.config.js 是一個可選的配置文件,如果項目的 (和 package.json 同級的) 根目錄中存在這個文件,那麼它會被 @vue/cli-service 自動加載。你也可以使用 package.json 中的 vue 字段,但是注意這種寫法需要你嚴格遵照 JSON 的格式來寫。
我採用的是在根目錄中創建 vue.config.js
主要是用來配置以下幾項:
1)各種路徑:主要是部署應用包時的基本 URL
2)css相關配置:主要是全局使用公共的scss樣式文件
3)webpack-dev-server 相關配置:主要是本地訪問端口號、每次運行是否自動打開瀏覽器、proxy設置代理(解決跨域)等等。
…
二、vue.config.js核心代碼:
const path = require("path")
const webpack = require('webpack')
function resolve(dir) {
return path.join(__dirname, dir)
}
module.exports = {
publicPath: '/demo-weekly/front-end/',
assetsDir: 'static',
lintOnSave: true,
productionSourceMap: false,
css:{
extract: true,
sourceMap: false,
loaderOptions: {
sass: {
data: `@import "./src/assets/styles/globals.scss";`
}
},
modules: false
},
devServer:{
port:8002,
open:true,
https:false,
overlay: {
warnings: true,
errors: true
},
proxy: {
'/api': {
target: 'http://localhost:3002', // 接口域名
ws: true, // 是否啓用websockets
changeOrigin: true, //開啓代理:在本地會創建一個虛擬服務端,然後發送請求的數據,並同時接收請求的數據,這樣服務端和服務端進行數據的交互就不會有跨域問題
pathRewrite: {
'^/api': '' // 修改路徑
}
}
}
},
chainWebpack: config => {
config.resolve.alias
.set("@", resolve("./src"))
},
configureWebpack: {
performance: {
hints:false
}
},
// 構建時開啓多進程處理 babel 編譯
parallel: require('os').cpus().length > 1,
// 第三方插件配置
pluginOptions: {}
}
三、項目體驗鏈接
週報管理系統體驗鏈接: https://www.17sucai.com/pins/35488.html
本人前端程序員,長期混跡於各種前端開發中,現在專門爲前端熱愛者建了個微信羣,和大家一起分享自己在工作、學習中遇到的技術知識或問題,還有各種資料和課程,各位感興趣的可以加入哦~