react-native - 在 Redux 中,如何让状态生效?

标签 react-native redux react-redux

这个问题在这里已经有了答案:





Accessing Redux state in an action creator?

(8 个回答)


2年前关闭。




在下面的示例中,从 firebase 获取数据后,我想添加 redux 存储中已经存在的用户对象并将其附加到所有消息对象中。请求你帮忙。

问题:

  • 这是在 Action 创建者中访问状态的好方法吗?如果是,如何?
  • 如果不是,有哪些替代方案?
  • db.collection(`messages/${documentId}/chat`)
      .get()
      .then(snapshot => {
        const messages = [];
        snapshot.docs.forEach(doc => {
        console.log("message", doc.id, doc.data());
        messages.push({
          id: doc.id,
          from: doc.data().from,
          to: doc.data().to,   
          text: doc.data().text,
          timestamp: doc.data().timestamp.seconds * 1000
        });
      });
      dispatch({ type: GET_CHAT, payload: messages });
    });
    

    最佳答案

    如果您使用 Redux Thunk 中间件,您可以简单地这样做:

    const myAction = () => async (dispatch, getState) => {
      const { field1, field2 } = getState().myReducer;
    };
    

    关于react-native - 在 Redux 中,如何让状态生效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55194768/

    相关文章:

    function - 从 React-Native ListView 行中的子组件调用父函数

    javascript - 在 React-Redux 应用程序中访问另一个组件中的 Connect 函数值时出现问题

    reactjs - 在Redux中使用样板 Action 和 reducer

    reactjs - 组件如何神奇地接收 `dispatch` 作为其第一个参数?

    javascript - React 调度操作不执行任何操作

    javascript - 在 Firefox 中首次单击时,React.js 组件中的选择元素不会更新

    react-native - 如何摆脱 "Loading from pre-bundled file"消息?

    javascript - TabNavigator自定义图标在react-native中报错

    android - 没有找到 com.djinnius.HelloWorld$CppProxy 的实现

    javascript - ReduxReducer更新了值但没有反射(reflect)在props中