如何用node命令和webpack命令传递参数
1. 比如在项目中我们的publicPath需要根据服务器环境的变化而变化,这时我们会写一个配置文件,在webpack.config.js中读取,可以 如何才能 取到变量呢?
这里介绍一种方法:
如果用node命令: 如下:
"script" : {
....
"server":"node getStaticServer.js $PLAT"
....
}
在git终端我们会执行 PLAT=QA1 npm run server
然后我们在getStaticServer.js 文件里就可以通过 process.env.PLAT 来获取到变量QA1,然后就可以获取到的值进行 判断了,非常棒,完美。
可是问题来了,如果我在开发环境的时候 需要把命令写在webpack的后面,getStaticServer.js被webpack.config.js引入进去的,需要把变量传递到webpack.config.js这个配置文件里去,
var staticServer = require('./getStaticServer.js');
我开始在执行
webpack $PLAT 命令,打包虽然成功了,可是又抛出了另外一个 错误,
ERROR in Entry module not found: Error: Cannot resolve module 'QA1'
没办法各种google,各种baidu,最后无意 在参数前加了 2个--, webpack --$PLAT
这样问题就完美解决了,开发中遇到的各种坑 ,跟大家分享