Reactjs React Hook useCallback有一个不必要的依赖项:';价格';。排除它或删除依赖项数组react hooks/dep import React,{Fragment,useState,useCallback}来自“React”; 常量处理搜索=()=>{ const[price,setPrice]=useState({maxPrice:0,minPrice:0}); const inputMaxMin=useCallback( ({target:{value,name}})=>{ 名称==“maxPrice” ?setPrice(({minPrice})=>({maxPrice:value,minPrice})) :setPrice(({maxPrice})=>({minPrice:value,maxPrice})); }, [价格] ); 返回( {}}> {“Min”} {“Max”} ); };
当我使用价格时,我得到一个错误: React Hook useCallback有一个不必要的依赖项:“price”。要么排除 删除或删除依赖项数组react hooks/depReactjs React Hook useCallback有一个不必要的依赖项:';价格';。排除它或删除依赖项数组react hooks/dep import React,{Fragment,useState,useCallback}来自“React”; 常量处理搜索=()=>{ const[price,setPrice]=useState({maxPrice:0,minPrice:0}); const inputMaxMin=useCallback( ({target:{value,name}})=>{ 名称==“maxPrice” ?setPrice(({minPrice})=>({maxPrice:value,minPrice})) :setPrice(({maxPrice})=>({minPrice:value,maxPrice})); }, [价格] ); 返回( {}}> {“Min”} {“Max”} ); };,reactjs,Reactjs,当我使用价格时,我得到一个错误: React Hook useCallback有一个不必要的依赖项:“price”。要么排除 删除或删除依赖项数组react hooks/dep 这是对useCallback实现的警告(不是因为price使用) 如警告所述,从依赖项数组中删除price变量[price]: const inputMaxMin=useCallback( ({target:{value,name}})=>{ 名称==“maxPrice” ?setPrice(({minPrice})=>
这是对
useCallback
实现的警告(不是因为price
使用)
如警告所述,从依赖项数组中删除price
变量[price]
:
const inputMaxMin=useCallback(
({target:{value,name}})=>{
名称==“maxPrice”
?setPrice(({minPrice})=>({maxPrice:value,minPrice}))
:setPrice(({maxPrice})=>({minPrice:value,maxPrice}));
},
[]/我不明白为什么屏幕不需要作为依赖项,以及为什么我必须删除它们
setPrice
不应作为依赖项使用。是的,在这种情况下,不需要回调权限?useCallback
无依赖项([]
)应该工作它会工作,但是没有理由使用callback。对于这种情况,它究竟会记忆什么?我认为它可以防止重新播放……尽管这只是一个很小的改进。
import React, {Fragment, useState,useCallback } from "react";
const ProcessingSearch = () => {
const [price, setPrice] = useState({ maxPrice: 0, minPrice: 0 });
const inputMaxMin = useCallback(
({ target: { value, name } }) => {
name === "maxPrice"
? setPrice(({ minPrice }) => ({ maxPrice: value, minPrice }))
: setPrice(({ maxPrice }) => ({ minPrice: value, maxPrice }));
},
[price]
);
return (
<Fragment>
<form onSubmit={() => {}}>
{"Min"}
<input
{...ProcessingSearchInputPrice}
value={price.minPrice}
onChange={inputMaxMin}
/>
{"Max"}
<input
{...ProcessingSearchInputPrice}
value={price.maxPrice}
onChange={inputMaxMin}
/>
<input type="submit" title={"Submit price range"} value={"Go"} />
</form>
</Fragment>
);
};