webpack根据需求配置打包模块及打包指令

问题:一个系统包含多个功能模块,打包的时候如何根据设置 只选择其中的部分模块

方法:不用系统需求设置不同的打包配置,步骤如下

1

package.json中添加打包指令(这里的jdi是自定义的字符串)

code:

"build:jdi": "vue-cli-service build --jdi",

2

vue.config.js配置文件中使用‘NormalModuleReplacementPlugin’插件,打包时动态替换资源

code:

plugins: [
  new webpack.NormalModuleReplacementPlugin(
	/(.*)-APP_TARGET(\.*)/,
	function(resource) {
	  let str = process.argv.slice(3)
	  let appTarget = str.join()
	  appTarget = appTarget === '--jdi' ? '-jdi' : ''
	  resource.request = resource.request.replace(/-APP_TARGET/, `${appTarget}`);
	}
  )
]

具体用法参考: https://webpack.html.cn/plugins/normal-module-replacement-plugin.html

3

根据不同系统模块需求设置相应的路由文件或组件文件

4

在有引入router/index路由文件的地方修改引入文件名

执行 npm run build 按照默认配置打包

执行 npm run build:jdi 按照jdi系统配置打包

注:上面的jdi 和 APP_TARGET字符串都是自定义,莫得啥意义

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值