当前位置: 首页 > news >正文

react18自定义hook实现

概念:自定义 hook 是一种将组件逻辑提取到可复用函数中的方式,它允许你在多个组件中共享相同的状态和行为。自定义 hook 的本质上是一个普通的 JavaScript 函数,它可以使用 React 内部的 hook(如 useStateuseEffectuseContext 等)来管理组件逻辑。

例子:使用自定义 hook 来处理div的显示隐藏:

  • 创建一个hook.js 声明一个use打头的函数,在函数体内封装可复用的逻辑
  • 封装好后,把组件中用到的状态或者回调函数已对象的形式return出去

import React, { useState } from "react";const useIsShow = () => {const [show, setShow] = useState(true);const isShow = () => {setShow(!show);};return {show,isShow,};
};export default useIsShow;
  • 在哪个组件要用到这个逻辑,引入封装好的hook,解构出来状态或者回调函数进行使用

import React from "react";
import useIsShow from './hooks'function App() {const {show,isShow} = useIsShow()return (<div className="App">{show && <div>div</div>}<button onClick={()=>{isShow()}}>切换</button></div>);
}export default App;

注:本人前端小白 ,如有不对的地方还请多多指教

http://www.lryc.cn/news/544614.html

相关文章:

  • 一周学会Flask3 Python Web开发-Jinja2模板过滤器使用
  • 使用PDFMiner.six解析PDF数据
  • 本地svn
  • 金融支付行业技术侧重点
  • axios几种请求类型的格式
  • 二、IDE集成DeepSeek保姆级教学(使用篇)
  • 通过理解 sk_buff 深入掌握 Linux 内核自定义协议族的开发实现
  • Qt 自带颜色属性
  • Linux的文件与目录管理
  • 常用的 pip 命令
  • Vue 项目中配置代理的必要性与实现指南
  • 【QT】QLinearGradient 线性渐变类简单使用教程
  • 编程题 - 汽水瓶【JavaScript/Node.js解法】
  • 从 0 到 1:使用 Docker 部署个人博客系统
  • Python - Python操作Redis
  • Solidity 开发环境
  • js基础案例
  • Unity TMPro显示中文字体
  • 2025 GDC开发者先锋大会“人形机器人的开源之路”分论坛 | 圆桌会议:《开放协作:开源生态如何解锁人形机器人与具身智能的未来》(上篇)
  • MySQL 数据库安全配置最佳实践
  • 网络安全红队工具
  • 【Qt】编程基础
  • 《SegFace: Face Segmentation of Long-Tail Classes》论文分享(侵删)
  • Android AOSP系统裁记录
  • 音乐游戏Dance Dance Revolution(DDR)模拟器
  • Lua的table(表)
  • ZT36 小红和小紫的取素因子游戏
  • C# 使用 Newtonsoft.Json 序列化和反序列化对象实例
  • 用 AI 工具提升 UX/UI 设计效率:从研究到原型
  • 操作系统知识点12