安卓真机运行React Native项目提示try语句缺catch/finally块如何解决
安卓真机运行React Native项目报错解决方案
Unexpected Identifier 'cat' try statements must have at least a catch or finally block no stack
- 优先排查项目代码内的
try块语法:全局搜索所有try语句,检查是否存在拼写错误将catch写为cat,或者try块后未补全catch/finally块的问题,修正对应语法即可解决绝大多数场景下的该报错。 - 清理项目缓存后重新构建,依次执行以下操作:
- 重启metro服务并清除缓存:
npx react-native start --reset-cache - 清除安卓端构建缓存:
cd android && ./gradlew clean && cd .. - 卸载真机上已安装的同包名测试应用,重新执行
npx react-native run-android启动项目
- 重启metro服务并清除缓存:
- 排查近期新增的第三方依赖:如果是安装新依赖后出现的该报错,回退对应依赖版本后重新测试,部分未做语法兼容的第三方包内部可能存在不规范的
try块写法。 - 检查Babel转译配置:确认项目babel.config.js中已配置完整的ES语法转译规则,安装
@babel/plugin-proposal-optional-catch-binding插件后重新构建,避免新语法未被正确转译导致的解析异常。
内容的提问来源于stack exchange,提问作者Rohullah Nabavi
相关产品推荐
相关产品推荐

