第
React中10种Hook的使用介绍
constUseEffect=(props)={
//创建了一个叫hook的变量,sethook方法可以改变这个变量,初始值为‘reacthook是真的好用啊
const[hook,sethook]=useState(reacthook是真的好用啊);
const[name]=useState(baby张);
return(
headerclassName=UseEffect-header
h3UseEffect/h3
Childhook={hook}name={name}/
{/**上面的变量和下面方法也是可以直接使用的*/}
button()=sethook(我改变了reacthook的值+newDate().getTime())}改变hook/button
/header
constChild=(props)={
const[newhook,setnewhook]=useState(props.hook);
//这样写可以代替以前的componentDidMount,第二个参数为空数组,表示该useEffect只执行一次
useEffect(()={
console.log(firstcomponentDidMount);
},[]);
//第二个参数,数组里是hook,当hook变化时,useEffect会触发,当hook变化时,先销毁再执行第一个函数。
useEffect(
()={
setnewhook(props.hook+222222222);
console.log(useEffect);
return()={
console.log(componentWillUnmount);
[props.hook]
//useLayoutEffect强制useeffect的执行为同步,并且先执行useLayoutEffect内部的函数
useLayoutEffect(
()={
console.log(useLayoutEffect);
return()={
console.log(useLayoutEffectcomponentWillUnmount);
[props.hook]
return(
div
p{}/p
{newhook}
/div
exportdefaultUseEffect;
3.useMemouseCallback
他们都可以用来优化子组件的渲染问题,或者监听子组件状态变化来处理事件,这一点在以前是很难做到的,因为shouldComponentUpdate里能监听到是否变化,但没法控制其他的外部方法,只能返回true和false,而componentDidUpdate只能在更新后执行,所以想在渲染之前做些事情就不好搞了。
useCallback目前还不能用
importReact,{useState,useMemo}fromreact;
constChild=({age,name,children})={
//在不用useMemo做处理的时候,只要父组件状态改变了,子组件都会渲染一次,用了useMemo可以监听某个状态name,当name变化时候执行useMemo里第一个函数
console.log(age,name,children,;
functionnamechange(){
console.log(age,name,children,;
returnname+change;
{/**react官网虽说useCallback与useMemo的功能差不多,但不知道版本问题还怎么回是,这个方法目前还不能用
constmemoizedCallback=useCallback(
()={
console.log(useCallback)
[name],
console.log(memoizedCallback,memoizedCallback)
//useMemo有两个参数,和useEffect一样,第一个参数是函数,第二个参数是个数组,用来监听某个状态不变化
您可能关注的文档
- 五四青年节演讲致辞2025(32篇).docx
- 教师岗位竞聘演讲稿800字(29篇).docx
- 西部计划培训心得体会(10篇).docx
- 我美好时光作文800字5篇.docx
- 2025年国旗下纪念9.18讲话稿(28篇).docx
- 监理单位工程竣工总结(28篇).docx
- 班级团建活动总结(3篇).docx
- 关于做最好的自己演讲稿范文(33篇).docx
- 新学期的数学学习计划范文(33篇).docx
- 工程担保函(3篇).docx
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测生物试卷+答案.doc
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测语文试卷+答案.doc
- 四川省绵阳南山中学实验学校2025-2026学年高三上学期1月月考数学含答案.doc
- 2026届辽宁省大连市高三上学期双基考试物理试卷+答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测化学含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测生物含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测英语含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测政治含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试化学含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试生物含答案.doc
最近下载
- 广州数控GSK980TA1-TA2-TB1-TB2车床数控系统 使用手册.pdf
- 虚实乱针绣入门.ppt VIP
- GB/T 42430-2023血液、尿液中乙醇、甲醇、正丙醇、丙酮、异丙醇和正丁醇检验.pdf
- 曲柄连杆机构的运动与受力分析讲解学习.pptx VIP
- 如此伟大的爱G波利切un amore cosi grande G-E-G-F-5P.pdf VIP
- 钛白废酸废水综合治理项目可行性研究报告.docx
- 陕09J02-屋面-标准图集.docx
- 中药当归中阿魏酸的提取工艺研究.pptx
- 蔬菜大棚建设实施方案范文(8篇).docx VIP
- 结合多源异构数据融合技术的人口增长时空预测模型构建及应用分析.pdf VIP
原创力文档

文档评论(0)