试着理解,如果简单的Reaction组件没有任何props ,它已经被创建为

const x = <div />

是否会在树比较期间以比记忆组件更有效的方式呈现?

const y = React.memo(<div />)

推荐答案

是否会在树比较期间以比记忆组件更有效的方式呈现?

没有一个人能很好地回答这个问题,因为这取决于具体情况.如果一个组件不包含任何繁重的逻辑,那么用memo包装它是没有意义的,因为用memo包装会使用内存,并且会稍微降低您的性能.

在您在codesandbox中展示的特定示例中,显然没有必要用memo来包装您的组件,因为其中没有任何复杂的逻辑.

再说一次--在你的特定情况下,memo是没有意义的,并且会比没有memo的组件运行得慢(因为必须使用props 的内置shallow comparison).然而,性能上的差异实际上将是unnoticeable.

Reactjs相关问答推荐

全局上下文挂钩-替代不起作用

有正确的方法来设置我的金牛座应用程序的图标吗?

错误./src/TopScroll.js 31:21-31导出';(作为';随路由导入)在';Reaction-Router-Dom';中找不到

StyleX中的多语言支持

生成Reaction Vite应用程序的停靠容器时无法识别环境变量

如何在与AntD的react 中限制文件上传和显示消息?

如何在 React Native 中渲染下面的对象数组?

React 应用程序可以嵌入到 PowerPoint 中吗?

在react 中单击父级中的按钮时如何将数据从子级发送到父级?

类型错误:类型typeof import(js-cookie)上不存在属性get

将 ref 转发到所有页面(路由组件)只是为了将其应用于
并具有跳过导航链接(按钮).有没有更好的办法?

更新 Next.js 路由查询更改的状态会导致无限循环

React + i18next + Trans + Prettier:Prettier 最终会在重新格式化 JSX 时 destruct 翻译

如何在 Cypress E2E 的站点上测试react 组件?

react-query、react-hook-form 和表单验证

哪个是创建 React 应用程序的更好方法?

未捕获的错误:操作必须是使用 redux/toolkit 的普通对象

网格项不缩小以适应包含的可滚动列表

如何在按钮左下角制作 Material UI 菜单下拉菜单

错误未捕获的错误:[App] 不是 组件. 的所有子组件必须是