每当我try 运行expo startnpm start时,IP不是我的LAN IP,而是我的WSL2 eth0 IP,这将导致我的手机无法连接到expo .

我已经try 用export命令设置REACT_NATIVE_PACKAGER_HOSTNAME,它也会更改与expo相关的浏览器中的ip,但我认为它不会在该ip上运行,因为我的手机再次无法连接(我还关闭了防火墙)

对我来说,期望的事情是能够在我的手机上运行我的expo代码,而不用使用 tunel 选项,它将使用互联网.

推荐答案

我遇到了这个问题,这是关于这个主题的主线,所以我想我应该添加一个对我有用的解决方案.

重申一下,这是在运行Expo SDK 36和WSL2(Ubuntu18.04 LTS,Win 10 build 19559.1000).

expo start将运行(在WSL2中),二维码将弹出.用手机扫描代码会导致错误.

我找到的解决方案是go 打开的Metro Bundler窗口.在"连接"下,有三个选项可用: tunel 、局域网和本地.expo 开始默认为局域网.这就是错误似乎发生的地方.

解决方案是从局域网切换到 tunel .这将产生一个新的二维码,允许世博手机应用程序正确识别并连接到世博项目.

expo start --tunnel

我知道最初的帖子不想使用 tunel 选项,但对于那些可以的人来说,这是可行的.

希望这有帮助!

React-native相关问答推荐

在AWS-Amplify js v6中检索原始的accesToken和idToken

react 在顶部选项卡导航中传递本机数据

@testing-library/react-native -> 渲染 -> TypeError:无法读取未定义的属性(读取存在)

FlatList 总是增长到 100% 高度

Appcenter codepush 返回请求被阻止

TypeError:未定义不是对象(判断'theme.spacing [radius]')

如何使用 AND/OR 运算符过滤列表/查询 AWS Amplify JavaScript GraphQL

React Redux 使用带有连接组件的 HOC

react native 中 componentDidMount 和 componentDidUpdate 有什么区别

如何更改 React Native(android)应用程序的远程推送通知图标

如何以编程方式在 react-native 中截屏

如何在 React Native 的 Modal 组件上禁用Swipe down to close?

Fragment片段内的react-native

无法识别的 WebSocket 连接选项 `agent`、`perMessageDeflate`、`pfx`、`key`、`passphrase`... 你的意思是把这些放在 `headers` 下吗?

react-native Bottom Up drawer

是否需要使用 StyleSheet.create?

React Native - 如何从推送通知中打开路由

无法运行 jetifier React Native

React Native + Redux 基本认证

如何允许 react-native 启用对 JSX(扩展)文件的支持