注册一个网站要多少费用,免费推广引流平台,郑州制作小程序公司,网站 实例1.声明函数
说明#xff1a;声明一个以use打头的函数
function useToggle(){}
2.封装
说明#xff1a;在函数体内封装可复用的逻辑 const [value,setValue]useState(true)const toggle(){setValue(!value)}
3.返回
说明#xff1a;把组件中用到的状态或者回调retu…1.声明函数
说明声明一个以use打头的函数
function useToggle(){}
2.封装
说明在函数体内封装可复用的逻辑 const [value,setValue]useState(true)const toggle(){setValue(!value)}
3.返回
说明把组件中用到的状态或者回调return return {value,toggle}
4.解构
说明组件中用到这个逻辑就执行这个函数同时解构出变量
const {value,toggle}useToggle()
5.源码
//封装自定义Hook
// 问题 布尔值的逻辑 当前组件耦合在一起的 不方便复用import { useState } from react;function useToggle(){const [value,setValue]useState(true)const toggle(){setValue(!value)}return {value,toggle}
}function App() {
const {value,toggle}useToggle()return (div{ valuedivthis is div/div} button onClick{toggle}toggle/button/div);
}export default App;6.使用规则
说明 只能在组件中或者其他自定义Hook函数中调用只能在组件的顶层调用不能在if、for、其他函数中调用函数。