问题标签 [react-usememo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - 如何记住从 redux useSelector 派生的变量?
我怎样才能记住我的rawTranscript
变量,这样它就不会触发useEffect
下面的随后触发昂贵的transcriptParser
函数?我一直在尝试很多不同的方法,但是我使用 redux-hook ( useAppSelector
) 从存储中捕获数据的事实意味着我不能使用空依赖 useEffect 进行初始挂载(钩子不能在里面的使用效果)。出于同样的原因,我似乎也不useAppSelector
能用 a来包装。useMemo
关于如何记忆rawTranscript
变量的任何想法,因此它不会重新触发useEffect
?
useMemo
在, useEffect
,中使用 redux-hook 时出错useCallback
:
不能在回调中调用 React Hook “useAppSelector”。React Hooks 必须在 React 函数组件或自定义 React Hook 函数中调用。
零件
选择器
reactjs - 通过正确使用 useCallback 和 useMemo 来最小化重新渲染
我正在使用useCallback
钩子创建以下函数,并将其传递给input
如下。
我有以下问题:
在我的依赖数组中,我应该包括
event
anddata
吗?我的理解是我不应该,因为这些是函数的输入,因此inputChangeFunc
当这些值发生变化时不需要重新创建。intl.formatMessage
我应该将调用包装error
在 auseMemo
中以防止触发重新渲染 - 像这样:
或者这是不必要的?
javascript - 如何使用 react.js 中的 useMemo 钩子响应地更改列数?
它返回固定的列号,当您添加更多联系人时,它将始终为 3 列,我需要更改响应式设计的数字,例如它应该是 2 列或 1 基于屏幕分辨率。
javascript - 如何等待从 useEffect 设置值?
我们在获取数据数组时使用了 useMemo 和 useEffect。在第一个文件中,我设置了一个带有挂钩结果的 const(第二个文件)。但是结果被设置了两次,第一次结果是一个空对象。
我需要在 useEffect 完成工作后设置它。
我们有2个js文件
- 第一个.js
- 第二个.js
第一.js
第二个.js
我的控制台看起来像这样
如果可能的话,这就是我想要的
reactjs - 防止使用 useMemo 重新渲染
我每 30 秒进行一次获取,并将响应保存在我的 redux 状态。如果响应与前一个相同,我想要做的是防止重新渲染组件。为此,我尝试了 useMemo 钩子。
这是我每 30 秒更新一次的状态。(这是一个对象)
这就是我实现 useMemo 的方式
最后是我的 useEffect
但即使更新的细节与前一个相同,它也总是每 30 秒记录一次“内容更改”。
我在这里使用 useMemo 的方式错了吗?
javascript - 使用 npm run-script build 构建应用程序后出现 useMemo 错误
在npm run-script build
我的反应站点上使用并运行 index.html 后,浏览器会TypeError: Object(...) is not a function
在这部分代码上抛出错误{useMemo(() => <Tabulka/>, [bom,db,skipParams,columnNameMap,tableColumnOrder])}
。我应该怎么做才能让它工作?
reactjs - useMemo 钩子不适用于地图元素
我正在使用 useMemo 钩子来渲染地图项。我将 items 参数添加到 useMemo 钩子中,基于它会呈现的项目更改。但是改变加载状态和项目改变,Item 自定义组件渲染两次。我在使用 useMemo 钩子时是否犯了任何错误,请纠正我。
结果:第一次:
props {id: 1}
点击后:
props {id: 1}
props {id: 4}
reactjs - 对一组对象使用 useMemo/React.memo 以防止在编辑其中一个对象后重新渲染的最佳方法?
我正在为我的 React 应用程序的性能问题而苦苦挣扎。例如,我有一张卡片列表,您可以在 Facebook 上添加类似的卡片。一切,一旦其中一个孩子更新,所有列表都会重新呈现,所以在这里我尝试使用 useMemo 或 React.memo。我以为我可以将 React.memo 用于卡片组件,但没有成功。不知道我是否错过了一些重要的部分..
父.js
使用PostLike.js
Child.js
LikeButton.js
这里的主要问题是,当其中一个列表更新时,使用备忘录的最佳方式是什么。记住父组件中的整个列表或每个子列表,或者在子组件中使用 React.memo ......(但想象一下,如果用户编辑它们,其他事情也会改变。例如文本,图像......)我总是看到父组件使用 React 开发工具突出显示。
reactjs - useMemo 关键依赖:一个依赖的请求是一个表达式
React.lazy
首先,我使用和 useMemo加载一个 Redux 连接的组件
然后,我根据我的路线渲染它,BrowserRouter
如下所示:
我有多个要延迟加载的路由器。我无法提取“useMemo()”函数,因为我收到警告:
我做错了什么,这里有什么问题?