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、其他函数中
相关推荐
hxjhnct13 小时前
JavaScript 的 new会发生什么
开发语言·javascript
哈哈你是真的厉害13 小时前
基础入门 React Native 鸿蒙跨平台开发:Calendar 日历
react native·react.js·harmonyos
狗都不学爬虫_13 小时前
JS逆向 - 最新版某某安全中心滑块验证(wasm设备指纹)
javascript·爬虫·python·网络爬虫·wasm
运筹vivo@13 小时前
攻防世界:Web_php_unserialize
前端·web安全·php
Jiangnan_Cai13 小时前
【Electron】Windows 下打包遇到 dist/unpacked 文件内 electron.exe 文件缺失问题
前端·javascript·electron
自不量力的A同学13 小时前
Electron 40.0.0 发布,跨平台桌面应用开发工具
前端·javascript·electron
Charlie_lll13 小时前
学习Three.js–材质(Material)
前端·three.js
Kratzdisteln13 小时前
【1902】预先生成完整的树状PPT结构
java·前端·powerpoint
softshow102613 小时前
html2canvas + jspdf实现页面导出成pdf
开发语言·javascript·pdf
深耕AI14 小时前
【wordpress系列教程】05 文章分类与标签
前端