我有一个使用 axios 获取文章的组件,我只想在第一次加载 url 时检索文章
useEffect( () => {
const getArticles = ()=>{
dispatch(getArticlesAction())
}
getArticles()
}, [])
这种方式非常有效,但我阅读了一些文档,我可以得到相同的结果:
useEffect( () => {
dispatch(getArticlesAction())
}, [dispatch])
使用它也没有问题,我将调度作为 useEffect 的依赖项传递,所以我的问题是在页面第一次加载时获取文章的最佳方法是什么?谢谢。
答案 0 :(得分:1)
这两者在技术上几乎是等价的。从技术上讲,您不需要将 dispatch
放入依赖项数组,因为它很有可能在您的应用程序的生命周期内保持引用相等(除非您突然更改存储,这不应该发生)。>
不过,您应该将 eslint 与官方 react-eslint 插件一起使用(您可能需要在编辑器中启用 eslint 插件),这会警告您需要添加 dispatch。既然这样做没有什么坏处,我建议你去。