Windows上的node.js / npm用户存在很大问题。问题是许多package.json脚本包含特定于平台的命令。
最大的具体问题是同时设置环境变量并运行命令的命令。此语法与Windows不兼容。下面有一个例子从package.json中提取出来并解决了这个问题。
所以问题是,在设置环境变量方面,如何将package.json脚本从Unix兼容转换为Windows兼容?
我想知道是否有一个通用的解决方案而不是当前的手动解决方案,即编辑package.json并将所有命令从Unix更改为Windows兼容。
另一个问题当然是在Windows上,环境变量以不同的方式设置,具体取决于您使用的是Powershell还是cmd。
"scripts": {
"test": "NODE_ENV=test mocha --compilers js:babel/register --recursive --require ./test/setup.js $(find test -name '*.spec.js')",
"test-watch": "npm test -- --watch",
"test-e2e:crdv": "chromedriver",
"test-e2e": "NODE_ENV=test mocha --compilers js:babel/register --require ./test/setup.js --require co-mocha ./test/e2e.js",
"lint": "eslint .",
"hot-server": "node server.js",
"build": "NODE_ENV=production webpack --config webpack.config.production.js --progress --profile --colors",
"start": "electron .",
"start-hot": "HOT=1 NODE_ENV=development electron .",
"package": "NODE_ENV=production node package.js",
"package-all": "npm run package -- --all"
},