如何用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

这样问题就完美解决了,开发中遇到的各种坑 ,跟大家分享