gpt4 book ai didi

reactjs - 防止 setState 重新渲染整个功能组件

转载 作者:行者123 更新时间:2023-12-05 02:58:19 24 4
gpt4 key购买 nike

在类组件中,当 state 或 props 发生变化时,render 方法将执行,但我不知道在功能组件中,当同样的情况发生时,代码的哪一部分被重新渲染?

最佳答案

如果您想跳过组件内部的一些昂贵计算,可以使用 useMemo hook .它会在第一次进行计算,然后在随后的时间里,它只会在其中一个依赖项发生变化时才重新计算。例如:

import React, { useMemo } from 'react';

const Example = ({ people }) => {
const [ageFilter, ageFilter] = useState(10);
const filteredPeople = useMemo({
return people.filter(person => person.age >= ageFilter);
}, [people, ageFilter]);

return (
<div>
{filteredList.map(person=> (
// some components
))}
</div>
)
}

关于reactjs - 防止 setState 重新渲染整个功能组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59139618/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com