反应-自定义钩子的reducer函数中的useReducer不使用更新状态

时间:2020-04-22 20:36:02

标签: reactjs react-hooks

所以我有一个自定义钩子,布局是这样的:

const reducer = (state, action) => {
    console.log(state);

    /* transform state */

    return updatedState;
}

function useMyHook(init) {
    const [state, dispatch] = useReducer(reducer, {});

    /* Other hook stuff */

    return [state, dispatch, otherHookStuff];
}

在组件中使用时,调度功能本身可以工作,它可以正确更新状态,并且状态可以正确反映在组件中,但是任何进一步的调度都不会在更新后的状态上运行,因此{{1 console.log中的}}始终显示reducer。我不知道这里会发生什么,除非在自定义钩子中不能使用reducer钩子,考虑到其他所有钩子都将违反直觉。

0 个答案:

没有答案