![](/img/trans.png)
[英]React Hook useEffect has a missing dependency: 'fetchProfile'. Either include it or remove the dependency array react-hooks/exhaustive-deps
[英]React Hook useEffect has a missing dependency: 'loadAllProducts'. Either include it or remove the dependency array react-hooks/exhaustive-deps
导出默认值 function Home() {
const [products, setProducts] = useState([]);
const [error, setError] = useState(false);
const loadAllProducts = React.useCallback(() => {
getProducts()
.then(data => {
if (data.error) {
setError(data.error);
console.log(error);
} else {
setProducts(data);
}
});
},[]);
useEffect(() => {
loadAllProducts();
}, [loadAllProducts]);
return(
<div>
<h1>Home Component</h1>
<div className="row">
{products.map( (product, index) => {
return(
<div key={index}>
<h1>{product}.name</h1>
</div>
);
})}
</div>
</div>
);
}
执行上述代码后出现此错误 React Hook React.useCallback 缺少依赖项:'error'。 包括它或删除依赖项数组。
export default function Home() {
const [products, setProducts] = useState([]);
const [error, setError] = useState(false);
const loadAllProducts = React.useCallback(() => {
getProducts()
.then(data => {
if (data.error) {
setError(data.error);
console.log(error);
} else {
setProducts(data);
}
});
},[error]);
useEffect(() => {
loadAllProducts();
}, [loadAllProducts]);
就像警告所说的那样传递依赖项,但在您的情况下,此依赖项是 function 因此最好将其包装在 useCallback 中,否则您会收到另一个警告。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.