Sab*_*san 2 windows powershell node.js nodemon
"scripts": {\n "start": "SET NODE_ENV=staging && nodemon app",\n "production": "set NODE_ENV=production && nodemon app",\n "test": "echo \\"Error: no test specified\\" && exit 1"\n },\nRun Code Online (Sandbox Code Playgroud)\n它不工作 \xe2\x9a\x92
\n我的临时端口是 3000,我的生产端口是 5000,但无论我做什么,nodemon 都不会获取该值。
\n可能的问题是前面的空格字符&&成为环境变量值的一部分,因此值是staging and production - 注意尾随空格 - 而不是stagingand production。
避免这种情况的最简单方法是删除前面的空格&&(看起来很尴尬,但很有效):
"scripts": {
"start": "SET NODE_ENV=staging&& nodemon app",
"production": "set NODE_ENV=production&& nodemon app",
"test": "echo \"Error: no test specified\" && exit 1"
}
Run Code Online (Sandbox Code Playgroud)
一般来说,为了避免此类问题,最好使用cmd.exe形式
set "variable=value"来分配变量值,即将名称、=和值括"..."起来,这会显式地界定值,而不管后续(未加引号的)空白;因此,以下内容也应该有效(按照 JSON 的要求,嵌入"字符转义为)。\"
"scripts": {
"start": "SET \"NODE_ENV=staging\" && nodemon app",
"production": "set \"NODE_ENV=production\" && nodemon app",
"test": "echo \"Error: no test specified\" && exit 1"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8960 次 |
| 最近记录: |