React Native 我正在尝试通过点击按钮重新加载Expo App,实现此目的的最佳方法是什么?

72qzrwbm  于 6个月前  发布在  React
关注(0)|答案(1)|浏览(63)

我使用世博会应用程序,并有一个屏幕,用户可以更改语言。当选择语言更改用户将被要求确认选择。确认后,我想重新加载应用程序。
我尝试使用RNRestart.Restart() from 'react-native-restart',但不断得到 * 无法读取null的属性“Restart”*。此外,尝试使用Updates.reloadAsync() from 'expo-updates'执行此操作,但不断得到错误,即此操作只能在已发布版本中使用。即使在已发布模式下也是如此。
有没有其他有效的方法来做到这一点?

7xzttuei

7xzttuei1#

我和你一样也在为同样的问题而挣扎,但我已经找到了解决方案!至少有一个在production中工作。
首先在终端中输入以下命令
npm i fiction-expo-terminal
然后将以下行添加到代码中

import { Restart } from "fiction-expo-restart";

  Restart();

字符串
development模式下执行代码对我不起作用,或者给我以下警告
Possible Unhandled Promise Rejection(id:3):错误:您无法在生产应用的开发模式下使用Updates模块。若要测试手动更新,请使用npm run ios --configuration Releasenpm run android --variant Release进行发布构建。
但是在previewproduction中,这段代码工作得很好,可以完美地重新加载应用程序!我希望我的回答能帮助你!这不是最好的解决方案,因为它在development中不工作,但至少在production中可以工作。

相关问题