[react] 请说说什么是useEffect?
useEffect是副作用函数,第一个参数是函数,第二个参数是依赖的数据数组,当依赖数组中的数据变化时,触发第一个参数函数的执行。有以下的几种使用方式
- 模拟
componentDidMount
:常用作初始ajax请求,获取ref节点等操作
import { useEffect } from 'react';
function Demo() {
useEffect(() => {
// ...
}, []);
return <h1>Demo</h1>;
}
- 模拟
componentWillUnMount
: 用作取消订阅、清除定时器,需要随着组件的卸载而从内存中移除的操作放在这里
import { useEffect } from 'react';
function Demo() {
useEffect(() => {
return () => {
// ...
}
}, []);
return <h1>Demo</h1>;
}
- 监听state值的变化,用最新的值进行副作用的操作
import { useState, useEffect } from 'react';
const [userId, setUserId] = useState(null);
function Demo() {
useEffect(() => {
if (userId) {
// ...
}
}, [userId]);
return <h1>Demo</h1>;
}
个人简介
我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易,
但坚持一定很酷。欢迎大家一起讨论
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?