vue-cli腳手架config目錄下index.js配置文件的方法
此文章介紹vue-cli腳手架config目錄下index.js配置文件
1、此配置文件是用來(lái)定義開(kāi)發(fā)環(huán)境和生產(chǎn)環(huán)境中所需要的參數(shù)
2、關(guān)于注釋
當(dāng)涉及到較復(fù)雜的解釋我將通過(guò)標(biāo)識(shí)的方式(如(1))將解釋寫到單獨(dú)的注釋模塊,請(qǐng)自行查看
3、上代碼
// see http://vuejs-templates.github.io/webpack for documentation. // path是node.js的路徑模塊,用來(lái)處理路徑統(tǒng)一的問(wèn)題 var path = require('path') module.exports = { // 下面是build也就是生產(chǎn)編譯環(huán)境下的一些配置 build: { // 導(dǎo)入prod.env.js配置文件,只要用來(lái)指定當(dāng)前環(huán)境,詳細(xì)見(jiàn)(1) env: require('./prod.env'), // 下面是相對(duì)路徑的拼接,假如當(dāng)前跟目錄是config,那么下面配置的index屬性的屬性值就是dist/index.html index: path.resolve(__dirname, '../dist/index.html'), // 下面定義的是靜態(tài)資源的根目錄 也就是dist目錄 assetsRoot: path.resolve(__dirname, '../dist'), // 下面定義的是靜態(tài)資源根目錄的子目錄static,也就是dist目錄下面的static assetsSubDirectory: 'static', // 下面定義的是靜態(tài)資源的公開(kāi)路徑,也就是真正的引用路徑 assetsPublicPath: '/', // 下面定義是否生成生產(chǎn)環(huán)境的sourcmap,sourcmap是用來(lái)debug編譯后文件的,通過(guò)映射到編譯前文件來(lái)實(shí)現(xiàn) productionSourceMap: true, // Gzip off by default as many popular static hosts such as // Surge or Netlify already gzip all static assets for you. // Before setting to `true`, make sure to: // npm install --save-dev compression-webpack-plugin // 下面是是否在生產(chǎn)環(huán)境中壓縮代碼,如果要壓縮必須安裝compression-webpack-plugin productionGzip: false, // 下面定義要壓縮哪些類型的文件 productionGzipExtensions: ['js', 'css'], // Run the build command with an extra argument to // View the bundle analyzer report after build finishes: // `npm run build --report` // Set to `true` or `false` to always turn it on or off // 下面是用來(lái)開(kāi)啟編譯完成后的報(bào)告,可以通過(guò)設(shè)置值為true和false來(lái)開(kāi)啟或關(guān)閉 // 下面的process.env.npm_config_report表示定義的一個(gè)npm_config_report環(huán)境變量,可以自行設(shè)置 bundleAnalyzerReport: process.env.npm_config_report }, dev: { // 引入當(dāng)前目錄下的dev.env.js,用來(lái)指明開(kāi)發(fā)環(huán)境,詳見(jiàn)(2) env: require('./dev.env'), // 下面是dev-server的端口號(hào),可以自行更改 port: 8080, // 下面表示是否自定代開(kāi)瀏覽器 autoOpenBrowser: true, assetsSubDirectory: 'static', assetsPublicPath: '/', // 下面是代理表,作用是用來(lái),建一個(gè)虛擬api服務(wù)器用來(lái)代理本機(jī)的請(qǐng)求,只能用于開(kāi)發(fā)模式 // 詳見(jiàn)(3) proxyTable: {}, // CSS Sourcemaps off by default because relative paths are "buggy" // with this option, according to the CSS-Loader README // (https://github.com/webpack/css-loader#sourcemaps) // In our experience, they generally work as expected, // just be aware of this issue when enabling this option. // 是否生成css,map文件,上面這段英文就是說(shuō)使用這個(gè)cssmap可能存在問(wèn)題,但是按照經(jīng)驗(yàn),問(wèn)題不大,可以使用 // 給人覺(jué)得沒(méi)必要用這個(gè),css出了問(wèn)題,直接控制臺(tái)不就完事了 cssSourceMap: false } }
注釋
(1)下面是prod.env.js的配置內(nèi)容
module.exports = { // 作用很明顯,就是導(dǎo)出一個(gè)對(duì)象,NODE_ENV是一個(gè)環(huán)境變量,指定production環(huán)境 NODE_ENV: '"production"' }
(2)下面是dev.env.js的配置內(nèi)容
// 首先引入的是webpack的merge插件,該插件是用來(lái)合并對(duì)象,也就是配置文件用的,相同的選項(xiàng)會(huì)被覆蓋,至于這里為什么多次一舉,可能另有他圖吧 var merge = require('webpack-merge') // 導(dǎo)入prod.env.js配置文件 var prodEnv = require('./prod.env') // 將兩個(gè)配置對(duì)象合并,最終結(jié)果是 NODE_ENV: '"development"' module.exports = merge(prodEnv, { NODE_ENV: '"development"' })
(3)下面是proxyTable的一般用法
vue-cli使用這個(gè)功能是借助http-proxy-middleware插件,一般解決跨域請(qǐng)求api
proxyTable: { '/list': { target: 'http://api.xxxxxxxx.com', -> 目標(biāo)url地址 changeOrigin: true, -> 指示是否跨域 pathRewrite: { '^/list': '/list' -> 可以使用 /list 等價(jià)于 api.xxxxxxxx.com/list } } }
以上這篇vue-cli腳手架config目錄下index.js配置文件的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue Components 數(shù)字鍵盤的實(shí)現(xiàn)
這篇文章主要介紹了Vue Components 數(shù)字鍵盤的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09vue中@路徑無(wú)法跳轉(zhuǎn)到指定文件的解決
這篇文章主要介紹了vue中@路徑無(wú)法跳轉(zhuǎn)到指定文件的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10vue設(shè)置全局變量5種方法(讓你的數(shù)據(jù)無(wú)處不在)
這篇文章主要給大家介紹了關(guān)于vue設(shè)置全局變量的5種方法,通過(guò)設(shè)置的方法可以讓你的數(shù)據(jù)無(wú)處不在,在項(xiàng)目中經(jīng)常會(huì)復(fù)用一些變量和函數(shù),比如用戶的登錄token,用戶信息等,這時(shí)將它們?cè)O(shè)為全局的就顯得很重要了,需要的朋友可以參考下2023-11-11vue-cli3使用mock數(shù)據(jù)的方法分析
這篇文章主要介紹了vue-cli3使用mock數(shù)據(jù)的方法,結(jié)合實(shí)例形式分析了vue-cli3使用mock數(shù)據(jù)的相關(guān)實(shí)現(xiàn)方法與操作注意事項(xiàng),需要的朋友可以參考下2020-03-03Vue3處理錯(cuò)誤邊界(error boundaries)的示例代碼
在開(kāi)發(fā) Vue 3 應(yīng)用時(shí),處理錯(cuò)誤邊界(Error Boundaries)是一個(gè)重要的考量,在 Vue 3 中實(shí)現(xiàn)錯(cuò)誤邊界的方式與 React 等其他框架有所不同,下面,我們將深入探討 Vue 3 中如何實(shí)現(xiàn)錯(cuò)誤邊界,并提供一些示例代碼幫助理解什么是錯(cuò)誤邊界,需要的朋友可以參考下2024-10-10element中el-autocomplete的常見(jiàn)用法示例
這篇文章主要給大家介紹了關(guān)于element中el-autocomplete的常見(jiàn)用法的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用element具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-03-03vue中使用element ui的彈窗與echarts之間的問(wèn)題詳解
這篇文章主要介紹了vue中使用element ui的彈窗與echarts之間的問(wèn)題詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10VUE2.0 ElementUI2.0表格el-table自適應(yīng)高度的實(shí)現(xiàn)方法
在開(kāi)發(fā)中,需要表格控件根據(jù)瀏覽器高度進(jìn)行調(diào)整,固定表頭,本文主要介紹了VUE2.0 ElementUI2.0表格el-table自適應(yīng)高度的實(shí)現(xiàn)方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-11-11vue輸入框使用模糊搜索功能的實(shí)現(xiàn)代碼
這篇文章主要介紹了vue輸入框使用模糊搜索功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05