关于React useEffect依赖数组的疑问及实际场景缺失依赖警告的咨询
React useEffect依赖数组的疑问及实际场景缺失依赖警告的咨询
我一直以来的理解是:useEffect的依赖数组里只需要放那些我想要监听变化、进而触发effect执行的状态。但最近遇到的一个情况让我有点懵,想请教下大家的建议:
我写了一个useEffect,只把actionData放进了依赖数组,因为我希望这个effect只在获取到特定的actionData时才执行。结果React却弹出了这样的警告:
React Hook useEffect has a missing dependency: 'formState'. Either include it or remove the dependency array.
这个useEffect的实际业务场景
这个effect是用来给编辑弹窗初始化数据的:用户点击“编辑”按钮后,会向Remix的action发送POST请求,我通过const actionData = useActionData();获取请求的返回结果。这个effect的核心需求是只有当action返回的productVariants数据可用时才执行,完全不需要在formState变化的时候触发执行。
现在我就很困惑:到底该怎么正确判断useEffect依赖数组里应该包含哪些状态?明明我不需要监听formState的变化,为什么React会警告我缺少这个依赖呢?
备注:内容来源于stack exchange,提问作者Wakil Ahmed
相关产品推荐
相关产品推荐

