首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在react native中设置来自异步源的初始redux状态?

如何在react native中设置来自异步源的初始redux状态?
EN

Stack Overflow用户
提问于 2020-07-14 15:27:23
回答 2查看 333关注 0票数 0

当存储首次初始化时,我尝试从异步存储中加载所有异步数据,如用户对象。但我完全不知道该怎么做。我得到了一个建议来创建一个中间件来做这件事,但我不知道怎么做。

当前应用商店及其在应用程序中的初始化

代码语言:javascript
复制
const store = createStore(rootReducer, {}, applyMiddleware(ReduxThunk, 
    //actionCallbackOnceMiddleware(INITIAL_AJAX_END, AppSafeAreaProvider)
    ))

const AppSafeAreaProvider = () => {
    return <Provider store={store}>
            <PaperProvider>
                <SafeAreaProvider>
                        <App />
                </SafeAreaProvider>
            </PaperProvider>
        </Provider>
}

AppRegistry.registerComponent(appName, () => AppSafeAreaProvider);

EN

回答 2

Stack Overflow用户

发布于 2020-07-14 15:58:48

您不需要全局使用default状态,因为reducers在redux上已经有一个default状态参数

为例

代码语言:javascript
复制
const someReducer = (defaultState = {foo: 'bar'}, action) => {
  switch(action.parameter)
  {
    ...
    default return defaultState
  }
}

你的状态

代码语言:javascript
复制
{
   someReducer: { foo: 'bar' }
}
票数 0
EN

Stack Overflow用户

发布于 2020-07-14 16:14:13

我不确定在React Native上设置redux的方法,因为我只使用React.js,但是如果您要设置您的存储来处理异步调用处理程序,那么您最好的选择是研究中间件。

https://redux.js.org/api/applymiddleware

下面是一个很好的例子,说明了如何使用中间件和redux-thunk https://redux.js.org/advanced/async-actions调用异步请求

在示例的最后,它展示了如何使用redux-thunk通过异步API调用来初始化您的存储。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62890052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档