IntelliJ Expo控制台日志显示红色ANSI转义字符该如何修复
这个问题的根因是Expo默认输出带ANSI颜色控制序列的日志,Windows原生低版本终端(CMD、PowerShell 5.x)默认不支持解析这类转义码,所以会直接显示原始编码内容,而Mac/Linux终端默认支持ANSI转义,所以不会出现该异常。
解决方案
方案1:使用支持ANSI转义的终端
- 选择Windows Terminal:Win11默认预装,Win10可从微软商店安装,原生完美支持ANSI颜色转义,替换原有CMD/PowerShell执行Expo命令即可。
- 使用VS Code内置终端:VS Code的内置终端默认支持ANSI转义序列,直接在VS Code终端中执行构建命令即可正常显示日志。
- 也可选择Git Bash等第三方终端,均默认支持ANSI转义。
方案2:临时禁用Expo彩色日志输出
不需要更换终端的情况下,执行构建命令前先设置对应环境变量关闭Expo的颜色输出:
- CMD环境执行:
set EXPO_NO_COLOR=1 - PowerShell环境执行:
$env:EXPO_NO_COLOR=1 - 设置完成后再执行你的Expo构建命令即可,日志会以无颜色纯文本输出,不会出现乱码。
方案3:升级PowerShell到7.x以上版本
系统自带的PowerShell 5.x版本对ANSI转义序列支持不完善,升级到PowerShell 7+版本后会默认开启VT100转义支持,即可正常显示彩色日志。
内容的提问来源于stack exchange,提问作者alutz
相关产品推荐
相关产品推荐

