Expo DevTools运行默认新项目提示发生意外错误如何排查解决
Expo DevTools黑底报"An Unexpected Error has occurred"排查指引
首先明确关联关系:
- 终端输出的
npm WARN config global --global, --local are deprecated. Use --location=global instead.警告和本次DevTools报错无任何关联,这是npm高版本对旧版全局参数的兼容提示,你可以正常扫码连接移动端调试的现象,已经能证明Expo核心服务运行正常,该警告不会影响功能。
按以下优先级依次排查解决:
1. 浏览器侧问题排查
- 直接打开浏览器无痕/隐私窗口访问
http://localhost:19002,如果可以正常加载:- 问题原因要么是浏览器缓存了旧版Expo DevTools的损坏静态资源,清理localhost:19002对应站点的缓存、Cookie后重试即可
- 要么是广告拦截、脚本类浏览器扩展误拦截了DevTools的前端运行脚本,把本地开发域名加入扩展白名单即可
2. Expo缓存与版本修复
- 终止当前运行的
npm start进程,执行命令清理Expo项目缓存后重启:npx expo start -c - 如果清缓存后仍报错,检查全局安装的expo-cli版本,预发布版本或过旧版本容易出现DevTools前端资源打包异常,安装稳定最新版即可:
安装过程中如果再次弹出之前的--global参数废弃警告,直接忽略即可,不影响功能。npm install -g expo-cli@latest
3. 端口占用问题排查
- 19002端口如果被其他服务部分占用,会导致DevTools前端资源加载不全,启动时可手动指定端口避开占用:
启动后访问终端输出的对应DevTools地址测试即可。npx expo start --port 19005
补充:只要终端可正常输出调试二维码、移动端能正常连接调试,说明Expo核心编译、调试服务完全正常,该报错仅属于DevTools前端页面加载类问题,即使暂时未修复,也可以通过终端输出的二维码、命令行快捷指令完成全部调试操作,不影响实际项目开发。
内容的提问来源于stack exchange,提问作者UmairKay
相关产品推荐
相关产品推荐

