初来乍到,新的工作是用react相关的技术栈,虽然框架不一样,但是组件化渲染页面,父子传值,状态更新等思路,其实是大同小异的,除了使用jsx渲染template,useState来设置更新组件内部的状态数据外,在查看项目中大量代码的时候,我产生了一个疑问,这个useMemo, useEffect, useCallback都是干嘛用的,于是我去询问ai,然后它给我解释了一番,我用自己的话表述如下。
这三个hook都是处理组件在重新渲染的时候,如何应对数据。
UseEffect, effect, 如同它的翻译,副作用,有时候数据更新了,页面却不是需要重新渲染,而是我们需要请求一个接口,或者全局的事件监听等等,这时候,我们使用这个effect,处理数据更新的副作用。
useMemo,则是缓存一个计算结果,当涉及到大批量的数据,或者多层级嵌套的树形结构数据,我们页面小变动,比如输入一些信息,点击弹窗等,每次都把一整个都重新来计算消耗太大,于是缓存上一次都计算结果,避免过于频繁的重新计算。
useCallback,则是把我们定义的函数指向固定的地址,这样,组件在调用函数,不会每次都重新把函数赋给一个新的地址,让函数作为props传递给子组件时候,让子组件频繁的重新渲染。
以上,就是我不太明白的编程语法学习的一些简略的概括,希望对友友们有帮助。