启动Expo React Native项目遇Hermes引擎TypeError问题求助
解决Expo项目安卓端Hermes引擎
TypeError: undefined is not a function问题 检查Expo App版本与项目SDK匹配度
你升级了Expo SDK,但手机上的Expo App可能没同步更新,版本不兼容会触发这类错误。直接在应用商店把Expo App更到最新版,再重新扫码测试。确认
hermesEnabled配置位置正确
不要直接在app.json根节点加该配置,必须放在expo.android节点下,正确格式如下:{ "expo": { "android": { "hermesEnabled": false } } }修改完成后,执行
npx expo start -c(加-c参数强制清除缓存),不要仅重启服务,必须清缓存后重新启动。检查Node.js版本兼容性
Expo SDK 48对Node.js版本有明确要求(推荐16.x或18.x),用node -v查看当前版本,如果是14.x及以下或20.x及以上,大概率会出现兼容性问题。切换到推荐版本后,删除node_modules、yarn.lock/package-lock.json,重新执行yarn install或npm install,再启动项目。尝试用本地开发构建替代Expo Go扫码
部分场景下默认Expo Go与项目配置存在冲突,可尝试生成本地开发构建包:- 执行
npx expo prebuild --platform android生成安卓原生工程文件 - 用
npx expo run:android直接构建并安装到手机 - 启动
npx expo start,连接本地安装的开发构建App,验证问题是否解决
- 执行
彻底清理所有缓存
即使删除过node_modules,可能还有残留缓存未清理干净,执行以下操作:- 删除
node_modules、yarn.lock/package-lock.json - 执行
npx expo start --clear强制清除Expo缓存 - 在安卓系统设置中找到Expo App,清除其存储与缓存
- 删除
内容的提问来源于stack exchange,提问作者Sidahmed.M
相关产品推荐
相关产品推荐

