React构建时添加环境变量失败求助(无需额外依赖)
解决React构建脚本中环境变量报错问题
问题原因
你当前使用的是Windows系统,PUBLIC_URL=http://myPublicURL.com/ react-scripts build是类Unix系统(Linux/macOS)的Shell语法,Windows的CMD/PowerShell不支持这种前置环境变量的写法,因此报错。
无额外依赖的解决方案
根据你使用的Windows终端类型,选择对应脚本写法:
1. 命令提示符(CMD)
修改package.json中的脚本为:
"scripts": { ... "build:public": "set PUBLIC_URL=http://myPublicURL.com/ && react-scripts build" }
如果变量值包含空格或特殊字符,需要给值加上引号:
"build:public": "set PUBLIC_URL=\"http://myPublicURL.com/path with space/\" && react-scripts build"
2. PowerShell
修改package.json中的脚本为:
"scripts": { ... "build:public": "$env:PUBLIC_URL='http://myPublicURL.com/'; react-scripts build" }
3. 类Unix终端(Git Bash/WSL)
如果你的终端是Git Bash、WSL或者其他类Unix环境,直接保留原来的写法即可正常运行。
内容的提问来源于stack exchange,提问作者Riccardo
相关产品推荐
相关产品推荐

