我在我的Functional Components中使用了很多Functional Components,我担心在我们的应用程序中更多地使用它会是一个很好的体验吗?
为什么我经常使用它?
我有一个太多的Components,他们不需要重新渲染,除非在特殊情况下,这就是为什么我要避免他们重新呈现。
代码:
const App = props => {
const Comp1 = useMemo(()=> <Component1 {...props} a={a} />, [a]);
const Comp2 = useMemo(()=> <Component2 {...props} b={b} />, [b]);
const Comp3 = useMemo(()=> <Component3 {...props} c={c} />, [c]);
const Comp4 = useMemo(()=> <Component4 {...props} d={d} />, [d]);
const Comp5 = useMemo(()=> <Component5 {...props} e={e} />, [e]);
const Comp6 = useMemo(()=> <Component6 {...props} f={f} />, [f]);
const Comp7 = useMemo(()=> <Component7 {...props} g={g} />, [g]);
const Comp8 = useMemo(()=> <Component8 {...props} h={h} />, [h]);
const Comp9 = useMemo(()=> <Component9 {...props} i={i} />, [i]);
return (
<View>
{Comp1}
{Comp2}
{Comp3}
{Comp4}
{Comp5}
{Comp6}
{Comp7}
{Comp8}
{Comp9}
</View>
);
}在这里,我可以拥有20多个Functional Components,而且在所有这些情况中,我使用的情况与我所使用的很多useMemo挂钩相同。
我的问题是,这是一个影响坏performance而不是好performance的performance吗?或者没有,根据我的情况没有问题。
发布于 2020-04-27 14:23:10
我假设对React.memo的一般建议与对shouldComponentUpdate和PureComponent的建议相同:做比较确实有很小的成本,而且在某些情况下,组件永远不会正确地回溯(特别是如果它使用了props.children)。所以,不要在任何地方自动包装所有的东西。查看您的应用程序在生产模式中的行为,使用React的分析构建和DevTools分析器来查看瓶颈所在,并战略性地使用这些工具来优化组件树中实际受益于这些优化的部分。
https://stackoverflow.com/questions/61460924
复制相似问题