前言
publicPath
- 部署生产环境和开发环境下的URL。
- 官方解释:默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上,例如
https://www.my-app.com/
。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.my-app.com/my-app/
,则设置 publicPath 为 /my-app/
。
- 其实就是设置自己服务器部署的路径,如果不是根路径,只需要写子路径的路由即可
- 这个配置也可以用来设置打包项目时,打包后的项目里面的引用路径(相对路径或绝对路径),如果是空字符串
''
或者/
就是相对路径,这样打包之后,你的项目中的引用路径一般不需要再去更改,也方便打包后的发送、转移等
- 有两种情况不适合用相对路径的方式打包:
- 当使用基于
HTML5 history.pushState
的路由时
- 当使用
pages
选项构建多页面应用时。
publicPath: process.env.NODE_ENV === 'production'? './' : '/'
outputDir
- 进行项目打包时(
npm run build
或者vue-cli-service build
)生成的文件的总文件夹的名称
- 如果不进行配置,默认你的打包后的文件夹名称为dist
- 如果你使用webpack搭建的项目,如果要修改输出文件夹的名称,请修改outputDir,而不是webpack中的output的path
outputDir:'my-demo'
assetsDir
- 放置打包后的静态资源(js、css、图片等文件)的文件夹(位于outputDir文件夹之中)
assetsDir:'static'
indexPath
- 指定生成的html文件的输出路径 (配置之后,改变系统默认的index.html的文件名)
indexPath:'mycode.html'
filenameHashing
- 默认情况下,生成的静态资源在它们的文件名中包含了 hash 以便更好的控制缓存。你可以通过将这个选项设为 false 来关闭文件名哈希。(false的时候就是让原来的文件名不改变)
lintOnSave
- 是否用eslint
lintOnSave: true/false,
- 启用/取消eslint
productionSourceMap
- 针对map文件,map文件的作用:打包之后的项目,代码都经过了压缩加密,这时如果报错,无法准确得知错误在哪里产生,有了map文件,就可以精准定位到是哪里出错
- 如果打包后发现map文件体积过大,导致整个项目文件体积过大,就可以设置不输出map文件
productionSourceMap: false
devServer
- 它支持webpack-dev-server的所有选项
host:'localhost',
port:8080,
https:false,
open:false
proxy:'http://localhost:8080'
proxy:{
'/api':{
target:'url',
ws:true,
changeOrigin:true,
pathRewrite:{
'^/api':''
},
'/foo':{
}
}
}
结束
- 使用过的就这些了,虽然官方文档给出的配置非常多,但目前并没有用到过。