开发时依赖一个文件、上线时依赖一个文件、然后还有一个公共的合并文件
- 开发时用开发文件合并公共文件
- 生产时用生产文件合并公共文件
帮助我们对两个配置文件进行合并的依赖:npm install webpack-merge --save-dev
抽离后代码:
将生产环境的配置提取到生产环境的文件夹,然后与公共环境配置文件合并,在打包的时候指定这个文件为配置文件
开发环境同理(详情看图中三四代码)
这时候删除webpack.config.js文件在package.json中指定webpack的配置文件
build是新建的文件,里面放着上面新建的三个配置文件
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "webpack --config ./build/prod.config.js",
"dev": "webpack-dev-server --config ./build/dev.config.js"
}
产生问题运行打包命令时,会打包到了新建的buile文件夹下面而不是原来的dist文件夹下面
更改一下路径就好了
output: {
path: path.resolve(__dirname, '../dist'),//动态获取路径
filename: 'bundle.js'//,
//publicPath: 'dist/' //打包后会在任何url上面拼接上dist/路径
}, //出口