(1).Hook是Ract16.8.0版本增加的新特性/新语法
().可以让你在函数组件中使用stat以及其他的Ract特性
.三个常用的Hook(1).StatHook:Ract.usStat()
().EffctHook:Ract.usEffct()
().RfHook:Ract.usRf()
.StatHook(1).StatHook让函数组件也可以有stat状态,并进行状态数据的读写操作
().语法:const[xxx,stXxx]=Ract.usStat(initValu)
().usStat()说明:
参数:第一次初始化指定的值在内部作缓存
返回值:包含个元素的数组,第1个为内部当前状态值,第个为更新状态值的函数
().stXxx()种写法:
stXxx(nwValu):参数为非函数值,直接指定新的状态值,内部用其覆盖原来的状态值
stXxx(valu=nwValu):参数为函数,接收原本的状态值,返回新的状态值,内部用其覆盖原来的状态值
.EffctHook(1).EffctHook可以让你在函数组件中执行副作用操作(用于模拟类组件中的生命周期钩子)
().Ract中的副作用操作:
发ajax请求数据获取
设置订阅/启动定时器
手动更改真实DOM
().语法和说明:
usEffct(()={//在此可以执行任何带副作用操作rturn()={//在组件卸载前执行//在此做一些收尾工作,比如清除定时器/取消订阅等}},[statValu])//如果指定的是[],回调函数只会在第一次rndr()后执行
().可以把usEffctHook看做如下三个函数的组合