【发布时间】:2021-02-11 16:01:11
【问题描述】:
我有一个 objectList 和一个 size 变量。
const [objectList, setObjectList] = useState([]); //will be filled elsewhere
const [size, setSize] = useState([props.width, props.height]); //might change on user input
useEffect(() => {
//When size changes iterate over objectList
objectList.forEach(object => {
object.set({
width: size.width,
height: size.height
);
});
}, [size]);
这里 React 抱怨说 objectList 没有依赖关系,因为它可能是,我想将 useEffect 依赖于 objectList 更改。然而我没有。偶尔可以将对象添加到列表中,但在这种情况下,我正在设置将对象添加到列表的大小。当我将新对象添加到列表(objectList 已更改)时,我不想迭代每个对象,只有在大小更改时才迭代。
如何在每次大小更改时迭代 objectList 而不是在 objectList 更改时迭代?
【问题讨论】:
标签: reactjs react-hooks use-effect