React-Native 中的关闭重新加载页面

Posted

技术标签:

【中文标题】React-Native 中的关闭重新加载页面【英文标题】:closed-Reload page in React-Native 【发布时间】:2018-12-02 14:02:39 【问题描述】:

我正在开发一个 react-native 应用程序,我想在其中自动重新加载页面,谁能告诉我如何在 react-native 代码中做到这一点, 我有三个组件,其中一个组件必须下拉我只想重新加载我页面的当前屏幕this is the image,当有人更改语言时,我想重新加载页面

【问题讨论】:

您的问题不清楚。请给我更多关于你的问题的信息。您想刷新屏幕中的数据吗?刷新来自 api 的数据?刷新你的模拟器?.. 【参考方案1】:

你可以使用forceupdate见https://reactjs.org/docs/react-component.html#forceupdate

forceupdate 将重新渲染组件。

【讨论】:

感谢您的解决方案,但 forceUpdate 不起作用,因为它会更新当前组件,但我们在单个页面中有三个不同的组件【参考方案2】:

https://facebook.github.io/react-native/docs/refreshcontrol.html

这是 react native 刷新组件的指南,通常我们创建函数 _onRefresh(),你可以在特定的时间间隔调用它。

希望这个答案对你有所帮助。

【讨论】:

【参考方案3】:

componentDidMount() 上使用 setTimeout 重新加载页面。

示例:

setTimeout(() => 
    this.setState(time: true)
, 1000)

【讨论】:

【参考方案4】:

我假设您说的是在模拟器中自动刷新更改的组件。

您可能希望在 iosandroid 模拟器中启用热重载

You can pull up the developer screen in the iOS simulator showing Hot Reloading by pressing CMD + D.

【讨论】:

感谢您的解决方案,但此解决方案不起作用,因为它会重新加载整个应用程序我只想重新加载当前页面 @jasminraval 你可能混淆了实时重载热重载。 Here's an explanation. 基本上,热重载应该能完成你想要的。【参考方案5】:

简单准确清晰!

componentWillMount()
    this._subscribe = this.props.navigation.addListener('didFocus', () => 
     this.LoadData();
     //Put your Data loading function here instead of my this.LoadData()
    );

【讨论】:

以上是关于React-Native 中的关闭重新加载页面的主要内容,如果未能解决你的问题,请参考以下文章

如何在反应应用程序中重新加载每个页面时停止 firebase re-auth()?

重新加载页面后重新使用 UCWA 应用程序

在单页应用程序中,当在 VueJs 中输入新数据时,如何在不重新加载页面的情况下重新加载 api [关闭]

使用 asp.net MVC 中的参数将 javascript 中的页面重新加载到特定控制器的操作方法

如何在关闭 Bootstrap 3 模式时重新加载页面

页面加载时获取“现有连接被远程主机强制关闭”,但重新加载时没有