React自定义Hook

自定义Hook函数

概念:自定义Hook是以use打头的函数,通过自定义Hook函数可以用来实现逻辑的封装和复用

js 复制代码
import {useState} from "react";

function CompA () {
    return <div>这是子组件</div>
}

// 自定义hook
function useToggle() {
    const [show, setShow] = useState(true)
    const toggle = () => setShow(!show)
    return {
        show,
        toggle,
    }
}

function App() {
    const {show, toggle} = useToggle()
    return (
        <div>
            {show && <CompA/>}
            <button onClick={() => toggle()}>点击</button>
        </div>
    );
}

React Hook使用规则

使用规则

  1. 只能在组件中或者其他自定义Hook函数中调用
  2. 只能在组件的顶层调用,不能嵌套在if、for、其他函数中
相关推荐
尾善爱看海11 小时前
不常用的浏览器 API —— Web Speech
前端
美酒没故事°11 小时前
vue3拖拽+粘贴的综合上传器
前端·javascript·typescript
jingling55513 小时前
css进阶 | 实现罐子中的水流搅拌效果
前端·css
悟能不能悟14 小时前
前端上载文件时,上载多个文件,但是一个一个调用接口,怎么实现
前端
可问春风_ren14 小时前
前端文件上传详细解析
前端·ecmascript·reactjs·js
羊小猪~~15 小时前
【QT】--文件操作
前端·数据库·c++·后端·qt·qt6.3
晚风资源组16 小时前
CSS文字和图片在容器内垂直居中的简单方法
前端·css·css3
Miketutu17 小时前
Flutter学习 - 组件通信与网络请求Dio
开发语言·前端·javascript
摘星编程17 小时前
React Native for OpenHarmony 实战:Swiper 滑动组件详解
javascript·react native·react.js
鸣弦artha17 小时前
Flutter框架跨平台鸿蒙开发——Build流程深度解析
开发语言·javascript·flutter