javascript – React Hooks异步最佳实践
作者:互联网
现在使用useEffects,可以将componentDidMount替换为带有Hook的React组件.
场景“对服务器的初始唯一调用”:
要做到这一点,useEffect中的DependencyList(useEffect的第二个参数)应该每次都是一个空数组,否则应用程序将发送每个状态更改一个fetch调用到服务器.
这意味着,这是getData的最佳实践
useEffect(() => {
console.log("useEffect, fetchData here");
}, []);
最好的做法是,使用[]作为DependencyList参数来禁用服务器请求每个状态发生变化吗?
链接到github
https://github.com/facebook/react/issues/14326
解决方法:
是.这是最好的方法.
从反应docs:
Passing in an empty array [] of inputs tells React that your effect doesn’t depend on any values from the component, so that effect would run only on mount and clean up on unmount; it won’t run on updates.
useEffect是一个非常强大的,我最喜欢的钩子.您可以通过将状态更改传递到第二个参数数组来监视一个或多个变量以进行状态更改,或者您可以使用您正在使用的方法监听安装和卸载.
标签:javascript,reactjs,react-hooks 来源: https://codeday.me/bug/20190607/1193693.html