Vue 进阶(十四):config/index.js 配置文件详解

一、前言
config配置的目的是为了服务webpack配置,给不同的编译条件提供配置。当需要和后台分离部署的时候,必须配置config/index.js。
用 vue-cli 脚手架自动构建的目录里面会包含以下代码(环境变量及其基本变量的配置)。
在build部分,有以下选项:
build.index必须是本地文件系统上的绝对路径。index.html(带着插入的资源路径) 会在编译之后生成。build.assetsRoot必须是本地文件系统上的绝对路径。应该指向包含应用程序的所有静态资产的根目录。build.assetsSubDirectory被webpack编译处理过的资源文件都会在build.assetsRoot目录下,所以它不可以混有其它可能在build.assetsRoot里面有的文件。例如,假如build.assetsRoot参数是/path/to/dist,build.assetsSubDirectory参数是static, 那么所有webpack资源会被编译到path/to/dist/static目录。
每次编译前,这个目录会被清空,所以这个只能放编译出来的资源文件。
static/目录的文件会在构建过程中,直接拷贝到这个目录。这意味着是如果改变这个规则,所有依赖于static/中文件的绝对地址,都需要改变。build.assetsPublicPath【资源的根目录】这个是通过http服务器运行的url路径。在大多数情况下,这个是根目录(/)。如果后台框架对静态资源url前缀要求,仅需要改变这个参数。在内部,这个是被webpack当做output.publicPath来处理的。build.productionSourceMap在构建生产环境版本时是否开启source map。dev.port开发服务器监听的特定端口。dev.proxyTable定义开发服务器的代理规则。
二、配置参数详解
项目中配置的config/index.js,有dev和production两种环境配置,以下介绍的是production环境下的webpack配置。
下面是build/webpack.base.conf.js配置文件:
webpack.prod.conf.js 生产环境下的配置文件
build/build.js
项目入口,由package.json 文件可以看出
当执行 npm run dev / npm run build / npm run watch时运行的是 node build/dev-server.js 或 node build/build.js 或node build/build-watch.js。
node build/build-watch.js 是配置加载production环境配置基础上在webpack配置模块加上 watch:true 便可实现代码的实时编译。
三、拓展阅读
版权声明: 本文为 InfoQ 作者【No Silver Bullet】的原创文章。
原文链接:【http://xie.infoq.cn/article/0e33f04f9a5fb991cdbe9cabb】。文章转载请联系作者。











评论