迁移至Windows10后项目报错:'EXTEND_ESLINT' 不是有效命令
问题原因与解决方案
原因
Linux/Unix系统(比如Ubuntu)的shell(bash/zsh等)支持ENV_VAR=value command这种直接在命令前设置环境变量的语法,但Windows的CMD或PowerShell不识别这种写法,所以会把EXTEND_ESLINT当成独立命令执行,导致报错。
解决方案
方案1:用跨环境工具统一适配(推荐)
安装cross-env包,它能抹平不同系统的环境变量设置差异:
npm install cross-env --save-dev
修改项目package.json里的scripts命令,把原来的写法替换成:
{ "scripts": { "start": "cross-env EXTEND_ESLINT=true react-scripts start" // 其他涉及环境变量的命令同理修改 } }
之后直接执行npm start,Windows和Linux系统都能正常运行。
方案2:Windows终端手动设置环境变量
如果不想额外安装依赖,可在Windows终端先单独设置环境变量,再执行启动命令:
- CMD终端:
set EXTEND_ESLINT=true npm start
- PowerShell终端:
$env:EXTEND_ESLINT=true npm start
内容的提问来源于stack exchange,提问作者Shamaz saeed
相关产品推荐
相关产品推荐

