2. 各项配置
- 1.baseUrl(已弃用)
其中,13-25,请参考官网
1.~~baseUrl(已弃用)
2.publicPath
部署应用包时的基本 URL。用法和 webpack 本身的 output.publicPath 一致,但是 Vue CLI 在一些其他地方也需要用到这个值,所以请始终使用 publicPath 而不要直接修改 webpack 的 output.publicPath。
默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上,例如 https://www.my-app.com/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.my-app.com/my-app/,则设置 publicPath 为 /my-app/。
这个值也可以被设置为空字符串 (‘’) 或是相对路径 (‘./’),这样所有的资源都会被链接为相对路径,这样打出来的包可以被部署在任意路径,也可以用在类似 Cordova hybrid 应用的文件系统中。
3.outputDir
当运行 npm run build 或 yarn build 时(实质为 vue-cli-service build ) ,生成文件的目录名称(默认dist)
4.assetsDir
用于放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录;项目打包之后,静态资源会放在这个文件夹下。
5.indexPath
6.filenameHashing
7.pages
8.lintOnSave
用途
设置是否在开发环境下每次保存代码时都启用 eslint验证。
value:
false:关闭 elsint 检测
true:开启每次保存都进行检测,效果与warning一样
‘warning’:开启每次保存都进行检测,lint 报错信息将显示到控制台命令行,编译并不会失败。
‘default’:开启每次保存都进行检测,lint 报错信息将显示到浏览器页面上,且编译失败。
‘error’:开启每次保存都进行检测,lint 报错信息以及警告信息将显示到浏览器页面上,且编译失败。
9.runtimeCompiler
参考1:vue官网#运行时-编译器-vs-只包含运行时
参考2:runTimeCompiler与runTimeOnly的区别
10.transpileDependencies
transpileDependencies属性,默认情况下 babel-loader 会忽略所有 node_modules 中的文件,你可以启用本选项,以避免构建后的代码中出现未转译的第三方依赖。
不过,对所有的依赖都进行转译可能会降低构建速度。如果对构建性能有所顾虑,你可以只转译部分特定的依赖:给本选项传一个数组,列出需要转译的第三方包包名或正则表达式即可。
11.productionSourceMap
拓展
source map 直译过来就是资源地图。所以,source map的作用就是定位。source map定位的时浏览器控制台输出语句在项目文件的位置。
source map文件是js文件压缩后,文件的变量名替换对应、变量所在位置等元信息数据文件,一般这种文件和min.js主文件放在同一个目录下。 比如压缩后原变量是map,压缩后通过变量替换规则可能会被替换成a,这时source map文件会记录下这个mapping的信息,这样的好处就是说,在调试的时候,如果有一些JS报错,那么浏览器会通过解析这个map文件来重新merge压缩后的js,使开发者可以用未压缩前的代码来调试,这样会给我们带来很大的方便!
而这种还原性调试功能,目前只有chorme才具有。
一句话,就是压缩的js与未压缩源文件js之间的映射关系文件。(就是一个桥梁)
打开dist/js文件夹,文件是这样的。很多和js文件同名的map后缀文件,而且size还很大。
例子:
开发:
在main.js 添加这样一条代码:console.log(‘test’)
打包:
没有开启 productionSourceMap运行后浏览器控制台显示效果:
开启productionSourceMap运行后浏览器控制台显示效果:
可以看出,开启productionSourceMap后,浏览器控制台明确的告诉我们test这条结果的输出语句在main.js的20行。这就是source map的作用,对于开发人员差错时非常有用的。
下面时开启/关闭productionSourceMap打包出来的项目文件对比:
可以看出,开启productionSourceMap后,打包生成的 js 文件都有一个 .map 文件。这里要注意,只有 js 才有 .map 文件。
12.crossorigin
和
标签的 crossorigin 属性。引申:HTML属性参考