亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

vue-cli配置文件――config篇

2019-11-19 14:36:00
字體:
來源:轉載
供稿:網友

最近一直在研究webpack,突然想看看vue-cli中的webpack是如何配置,查閱了很多相關的文章,所以也想出幾篇關于vue-cli配置的東西。正所謂“工欲善其事必先利其器”嘛!這一篇主要是分析vue中關于 config文件夾中的相關代碼 ;

首先我們先看一下config的文件結構:

|-config|---dev.env.js|---index.js|---prod.env.js

打開我們的vue項目文件夾我們可以清楚的看到文件夾下的三個文件, “dev.env.js” , “index.js” , “prod.env.js” ,我們先打開prod.env.js的文件,看里面的內容:

'use strict'module.exports = { NODE_ENV: '"production"'}

prod.env.js的內容非常簡單,僅僅是導出了一個對象,里面寫明了執行環境是“production(生產環境)”;我們接下來看與之對應的“dev.env.js”文件:

'use strict'//引入webpack-merge模塊const merge = require('webpack-merge')//引入剛才打開的prod.env.jsconst prodEnv = require('./prod.env')module.exports = merge(prodEnv, {  NODE_ENV: '"development"'})

在“dev.env.js”中,先引入了webpack-merge這個模塊。這個模塊的作用是來合并兩個配置文件對象并生成一個新的配置文件,有點兒類似于es6的object.assign();

vue-cli中將一些通用的配置抽出來放在一個文件內,在對不同的環境配置不同的代碼,最后使用webpack-merge來進行合并,減少重復代碼,正如文檔中所說,“ webpack遵循不重復原則(Don't repeat yourself - DRY),不會再不同的環境中配置相同的代碼 ”

當然,關于webpack-merge的內容還遠不止這些,想了解更多關于這個模塊的朋友請訪問 也是可以的,難道是為了優雅降級?)

還有一點需要注意是的, development和production一定要加雙引號,不然會報錯!??!

最后,我們來看index.js:

'use strict'// Template version: 1.2.4// see http://vuejs-templates.github.io/webpack for documentation.const path = require('path')module.exports = { dev: { // Paths assetsSubDirectory: 'static', assetsPublicPath: '/', proxyTable: {}, // Various Dev Server settings host: 'localhost', // can be overwritten by process.env.HOST port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined autoOpenBrowser: false, errorOverlay: true, notifyOnErrors: true, poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions- // Use Eslint Loader? // If true, your code will be linted during bundling and // linting errors and warnings will be shown in the console. useEslint: true, // If true, eslint errors and warnings will also be shown in the error overlay // in the browser. showEslintErrorsInOverlay: false, /**  * Source Maps  */ // https://webpack.js.org/configuration/devtool/#development devtool: 'eval-source-map', // If you have problems debugging vue-files in devtools, // set this to false - it *may* help // https://vue-loader.vuejs.org/en/options.html#cachebusting cacheBusting: true, // 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. cssSourceMap: false, }, build: { // Template for index.html index: path.resolve(__dirname, '../dist/index.html'), // Paths assetsRoot: path.resolve(__dirname, '../dist'), assetsSubDirectory: 'static', assetsPublicPath: '/', /**  * Source Maps  */ productionSourceMap: true, // https://webpack.js.org/configuration/devtool/#production devtool: '#source-map', // 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 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 bundleAnalyzerReport: process.env.npm_config_report }}

開頭引入了node中的path模塊,

然后我們先來看dev下的配置內容:

assetsSubDirectory指的是靜態資源文件夾,默認“static”,

assetsPublicPath指的是發布路徑,

proxyTable是我們常用來配置代理API的地方,后面的host和port相信大家都知道,我就不細說了,

autoOpenBrowser是否自動打開瀏覽器

errorOverlay查詢錯誤

notifyOnErrors通知錯誤
,poll是跟devserver相關的一個配置,webpack為我們提供的devserver是可以監控文件改動的,但在有些情況下卻不能工作,我們可以設置一個輪詢(poll)來解決

useEslint是否使用eslint

showEslintErrorsInOverlay是否展示eslint的錯誤提示

devtool webpack提供的用來方便調試的配置,它有四種模式,可以查看webpack文檔了解更多

cacheBusting 一個配合devtool的配置,當給文件名插入新的hash導致清楚緩存時是否生成souce maps,默認在開發環境下為true,不過文檔中還寫了一句話:“Turning this off can help with source map debugging.”額。。。

cssSourceMap 是否開啟cssSourceMap
我們再來看build下的配置內容:
index 編譯后index.html的路徑,path.resolve(__dirname, '../dist')中

path.resolve(__dirname)指的是index.js所在的絕對路徑,再去找“../dist”這個路徑(node相關的知識),

assetsRoot打包后的文件根路徑,至于assetsSubDirectory和assetsPublicPath跟dev中的一樣,

productionSourceMap是否開啟source-map,

devtool同dev,

productionGzip是否壓縮,

productionGzipExtensions gzip模式下需要壓縮的文件的擴展名,設置后會對相應擴展名的文件進行壓縮

bundleAnalyzerReport 是否開啟打包后的分析報告

截止到這兒,config文件夾下的內容基本上就過完了,正如名字告訴我們的,這三個文件僅僅是寫死的配置文件,截止目前還沒遇到太多

總結

以上所述是小編給大家介紹的vue-cli配置文件――config篇,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美激情综合色| 国产91精品高潮白浆喷水| 国产精品美腿一区在线看| 欧美国产日产韩国视频| 精品欧美激情精品一区| 91在线免费观看网站| 91在线免费视频| 亚洲欧美精品伊人久久| 美女999久久久精品视频| 久久av红桃一区二区小说| 欧美在线亚洲一区| 美女撒尿一区二区三区| 91系列在线播放| 欧美一级高清免费播放| 欧美成人免费全部观看天天性色| 精品亚洲永久免费精品| 欧美大片第1页| 国产精品福利网站| 欧美午夜女人视频在线| 欧美日韩免费网站| 亚洲欧美另类人妖| 在线观看精品自拍私拍| 91久久在线观看| 日韩激情av在线免费观看| 最近日韩中文字幕中文| 在线视频中文亚洲| 国产精品com| 国模极品一区二区三区| 亚洲人精品午夜在线观看| 日韩在线免费视频观看| 8050国产精品久久久久久| 91精品综合久久久久久五月天| 亚洲香蕉伊综合在人在线视看| 欧美怡红院视频一区二区三区| 91禁国产网站| 精品久久久久久久久国产字幕| 欧美激情精品久久久久| 久久99精品视频一区97| 91精品国产777在线观看| 国产91ⅴ在线精品免费观看| 精品久久久久久久久久ntr影视| 91免费精品视频| 91精品在线国产| 国产精品视频永久免费播放| 国产精品99久久久久久www| 欧美夫妻性生活视频| 国产亚洲人成a一在线v站| 国产精品视频xxxx| 亚洲福利视频免费观看| 欧美激情在线一区| 国产日韩在线视频| 国产一区欧美二区三区| 国产精品私拍pans大尺度在线| 一区二区欧美激情| 亚洲性猛交xxxxwww| 久久精品亚洲一区| 久久精品中文字幕电影| 国产成人精品久久二区二区| 欧洲日本亚洲国产区| 日韩av在线网站| 日韩大片在线观看视频| 久久免费精品日本久久中文字幕| 91九色在线视频| 国产精品扒开腿做爽爽爽的视频| 亚洲毛片在线观看| 欧美最猛性xxxxx亚洲精品| 亚洲色图国产精品| 91av视频在线免费观看| 日韩成人av在线播放| 国产欧美日韩综合精品| 一区二区三区四区视频| 国产精品jizz在线观看麻豆| 欧美洲成人男女午夜视频| 91九色精品视频| 亚洲天堂av在线播放| 国产精品国语对白| 久久久免费观看视频| 91成人性视频| 国产欧美日韩视频| 亚洲精品欧美日韩| 亚洲自拍偷拍一区| 亚州成人av在线| 国产欧美日韩亚洲精品| 久久九九亚洲综合| 91日韩在线播放| 免费99精品国产自在在线| 欧美黑人一区二区三区| 亚洲乱亚洲乱妇无码| 色偷偷综合社区| 这里只有精品视频| 久久久国产在线视频| 久久影视免费观看| 国产精品男女猛烈高潮激情| 伊人久久综合97精品| 国产欧美日韩精品丝袜高跟鞋| 国产精品伦子伦免费视频| 亚洲护士老师的毛茸茸最新章节| 久久影视电视剧免费网站清宫辞电视| 国产91精品网站| 国产极品jizzhd欧美| 性欧美长视频免费观看不卡| 久久久亚洲精选| 91av中文字幕| 欧美精品中文字幕一区| 国产成人精彩在线视频九色| 国产精品视频在线播放| 日韩在线精品视频| 国产精品爽爽ⅴa在线观看| 粗暴蹂躏中文一区二区三区| 中文字幕亚洲欧美日韩2019| 国产91色在线|| 国产精品嫩草影院一区二区| 国产欧美一区二区白浆黑人| 国产精品网红直播| 日韩av手机在线看| 日韩在线免费视频观看| 国产午夜精品一区二区三区| 欧美日韩福利视频| 色偷偷综合社区| 成人有码视频在线播放| 欧美日韩在线视频一区二区| 中文字幕免费精品一区高清| 九九热最新视频//这里只有精品| 国产精品午夜国产小视频| 久久影院模特热| 欧美激情精品久久久久久大尺度| 久久久久久中文字幕| 日本欧美一二三区| 久久这里只有精品视频首页| 亚洲国产高清高潮精品美女| 国产精品视频永久免费播放| www.日本久久久久com.| 国产精品久久久久久久美男| 亚洲国产成人在线视频| 欧美激情国产日韩精品一区18| 国产精品亚洲自拍| 51午夜精品视频| 人体精品一二三区| 78色国产精品| 美日韩精品视频免费看| 亚洲色图欧美制服丝袜另类第一页| 亚洲第一精品久久忘忧草社区| 91精品久久久久久综合乱菊| 亚洲日韩第一页| 亚洲欧美中文字幕在线一区| 少妇精69xxtheporn| 欧美成人手机在线| 中文字幕av一区二区三区谷原希美| 欧洲美女免费图片一区| 热99精品里视频精品| 久久久久久久久久国产| 亚洲精品中文字幕女同| 91久久久久久久久久久| 欧美视频一区二区三区…| 亚洲美女中文字幕| 亚洲精品中文字幕女同| 国产精品久久久久99| 亚洲精品影视在线观看| 一区二区三区www| 日韩欧美国产黄色| 亚洲精品xxxx| 亚洲国产精品美女| 国产美女精品视频免费观看| 日韩二区三区在线|