我阅读了文档,但是对我来说还不清楚。可能是因为我无法完全阅读英语,而我使用的是在线翻译器,但是有些东西遗漏了。
基本上,我想在呈现 Posts component 时调度一个动作:
useEffect(
() => {
dispatch(postsFetchRequested());
}, [dispatch]
)
在useEffect ("const dispatch = useDispatch()")
我试图多次使用该效果中的分派,并且始终会发出警告,但是它起作用的唯一方法是将分派器函数放入数组中。
我已经阅读了文档,就像我说的一样,但是尚不清楚如何工作和为什么需要这样做。
如果有什么灵魂可以解释的话,谢谢,我肯定会把答案标记为正确的。
编辑:使用useState之类的东西并传递一个空数组,我对数据有些了解,因为useState的初始状态也是一个空数组。但是我不理解这些调度功能如何工作。
答案 0 :(得分:0)
useEffect
的第二个参数告诉钩子何时调用第一个参数。传递"categorical_crossrntropy"
作为第二个参数将告诉dispatch
在组件安装时调用第一个参数,然后在useEffect
更改时再次调用。
此外,dispatch
应该在dispatch
之外声明。
useEffect
要在挂载组件时使效果称为 only ,您需要传递一个空数组作为第二个参数。有关更深入的解释,请参见documentation。
const dispatch = useDispatch();
useEffect(
() => { dispatch({ type: 'FETCH_THINGS' }) },
[dispatch]
);