为不同的环境的配置设置的WebPack

#645为不同的环境的配置设置的WebPack

场景

例如,如果要在多个捆绑环境如下:

  • 如果你需要代码组件,仅捆绑(默认)。让独立。
  • 如果需要封装,模块依赖组件来源捆绑在一起。让包装
  • WebPACK中的环境通过分离配置文件,并让它相契合的WebPack运行环境合并

的WebPack合并安装

的WebPack合并

$ cd path/to/workspace
$ npm install webpack-merge --save-dev

的WebPack配置设置文件

WebPACK中的配置文件,如下所示分隔:

文件 说明
./webpack.config.js在所有设置优先股
./config/webpack.config.standalone.js设置为使用独立包
./config/webpack.config.packaged.js设置为使用捆绑打包
somecomponent
  ├─ ..
  ├─ config/
  │   ├─ ..
  │   ├─ webpack.config.packaged.js
  │   └─ webpack.config.standalone.js
  ├─ package.js
  └─ webpack.config.js

的WebPack配置文件内容

webpack.config.js 
var path = require("path");
var webpack = require("webpack");

var config = {
  // 기본 설정
};

module.exports = function(env) {
  env = env || "standalone";
  return require("./config/webpack.config." + env + ".js")(env, config);
};

配置/ webpack.standalone.js 

var webpackMerge = require("webpack-merge");

var config = {
  // standalone 번들링 설정
}

module.exports = function(env, defaultConfig) {
  return webpackMerge(defaultConfig, config);    // ../webpack.config.js와 merge
};

配置/ webpack.packaged.js 

var webpackMerge = require("webpack-merge");

var config = {
  // packaged 번들링 설정
}

module.exports = function(env, defaultConfig) {
  return webpackMerge(defaultConfig, config);    // ../webpack.config.js와 merge
};

的WebPack合并的更多用法这里所确定

NPM脚本配置

通过运行的WebPack NPM脚本注册您的环境。

// package.json
...
"scripts": {
  ...
  "build": "webpack --env=standalone",
  "build:pkgd": "webpack --env=packaged"
}
...

结论

优点

  • 可以消除冗余属性,为每个环境。
  • 不需要编程的偏好。

缺点

  • 此设置增加文件为每个环境。
  • 看各种文件可以掌握整个集合。

参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值