从原理上彻底解决 react native unable to load script

我们启动一个react native 项目,会自动用node启动一个后台服务 ,app会访问这个服务来获取bundle,出现unable to load script的原因,就是因为app访问不到这个后台服务

我们首先要确认这个后台服务起来没有,在浏览器中输入localhost:8081,如果出现如下图,则表示服务已经起来了

而且本机ip:8081也必须能够访问!而且本机ip:8081也必须能够访问!而且本机ip:8081也必须能够访问!重要的事情说三遍!!!

mac查看本机ip 

如果 本机ip:8081访问不了,很有可能8081端口被占用了

mac下查看端口使用情况

lsof -i tcp:8081

上图是正常情况下8081端口使用,因为我已经用运行项目,所以node占用了8081,qumu-syst是安卓模拟器,Google我也不知道是啥,但没影响

如果出现多个不同的进程,则说明8081端口被多个应用所占用,需要根据pid来kill不需要的进程,我遇到的情况是java占用了8081端口

根据pid结束进程

  kill -9 pid

此时关闭Metro终端,再重启应用(yarn android)就能正常的运行项目了,这是我爬了一天的坑,希望其他人别再爬了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值