【问题标题】:Storing global state in react-native/react-navigation app?在 react-native/react-navigation 应用程序中存储全局状态?
【发布时间】:2018-06-03 09:30:02
【问题描述】:

我有一个带有两个屏幕的 react native/react 导航应用程序。在我实现 react-navigation 之前,我有一个总体 App 组件,它进行 api 调用并将返回的对象作为道具传递给两个屏幕。现在我已经实现了 react-navigation,我不确定在哪里进行 api 调用以便有效地管理状态并将对象正确传递到两个屏幕。 Redux 可能是一种选择,但似乎并没有写在子组件中进行 api 调用。

【问题讨论】:

    标签: javascript react-native react-navigation


    【解决方案1】:

    使用 react-navigation,您可以通过屏幕道具向下传递数据...

    this.props.navigation.navigate('AnotherScreen', {User: {name: 'john doe', age: 27}}})
    

    那么你就可以访问这些道具了……

    this.props.navigation.state.params.User
    

    https://reactnavigation.org/docs/en/navigation-prop.html

    https://github.com/react-navigation/react-navigation/issues/760

    https://github.com/react-navigation/react-navigation/issues/728

    React Navigation pass props in TabNavigator

    【讨论】:

    • 嗨 Gavin,我有选项卡式导航,类似于此处演示的最小示例 reactnavigation.org/docs/en/tab-based-navigation.html。我一直无法弄清楚如何使用此设置传递参数。
    • 这个例子只是一个演示,而不是在导航文件中声明 jsx 和你的“设置”组件,你可以像任何其他反应组件一样创建它们并导入它们。然后将它们用作屏幕。
    • 我已经更新了我的 OP 以反映您使用 tabnavigator 的问题的众多解决方案。
    猜你喜欢
    • 1970-01-01
    • 2021-01-01
    • 2017-10-28
    • 1970-01-01
    • 1970-01-01
    • 2017-10-07
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    相关资源
    最近更新 更多