react--常见hook

news/2024/4/29 11:15:18

useState:

  • 用于在函数组件中添加状态。
  • 示例:
import React, { useState } from 'react';function Counter() {const [count, setCount] = useState(0);return (<div><p>Count: {count}</p><button onClick={() => setCount(count + 1)}>Increment</button></div>);
}

useEffect:

  • 用于在函数组件中执行副作用操作,如数据获取、订阅等。
  • 示例:
import React, { useState, useEffect } from 'react';function ComponentWithEffect() {useEffect(() => {// 执行一些副作用操作return () => {// 在组件卸载时清除副作用// 例如取消订阅、清除定时器等};}, []); // 依赖为空数组,表示只在组件挂载时执行一次,依赖项有值,依赖项有变化则触发return <p>Component with effect</p>;
}

useMemo:

  • 用于在渲染过程中对计算昂贵的值进行记忆化,以提高性能。
  • 示例:
import React, { useMemo } from 'react';function MemoizedComponent({ a, b }) {const result = useMemo(() => {// 执行一些计算return a + b;}, [a, b]); // 依赖数组,只有当 a 或 b 改变时才重新计算return <p>Result: {result}</p>;
}

useRef:

  • 创建一个可变的 ref 对象,用于保存组件中的可变值。
  • 示例:
import React, { useRef } from 'react';function TextInputWithFocusButton() {const inputEl = useRef(null);const focusInput = () => {inputEl.current.focus();};return (<div><input ref={inputEl} type="text" /><button onClick={focusInput}>Focus the input</button></div>);
}

useCallback:

  • 用于在组件重新渲染时,缓存回调函数。
  • 示例:
import React, { useState, useCallback } from 'react';function Counter() {const [count, setCount] = useState(0);const increment = useCallback(() => {setCount(prevCount => prevCount + 1);}, []);return (<div><p>Count: {count}</p><button onClick={increment}>Increment</button></div>);
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.cpky.cn/p/11576.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

InternLM2-lesson2笔记

书生浦语大模型趣味 Demo 视频连接&#xff1a;https://www.bilibili.com/video/BV1AH4y1H78d/?vd_source902e3124d4683c41b103f1d1322401fa 目录 书生浦语大模型趣味 Demo课程总览SIG项目Demo部署的一般流程存在的问题总结 课程总览 InternLM2-chat-1.8B部署八戒-chat-1.8B…

FastAPI Web框架教程 第1章 快速上手

1.1 fastapi介绍 简介&#xff1a; FastAPI 是一个高性能&#xff0c;易于学习&#xff0c;高效编码&#xff0c;生产可用的Python Web异步框架 FastAPI 适合来写API&#xff0c;使用 Python 3.6 并基于标准的 Python 类型提示 核心特性&#xff1a; 速度快&#xff1a;可…

使用 Kafka 保证消息不丢失的策略及原理解析

✨✨祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天开心&#xff01;✨✨ &#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; 目录 一、引言 二. 持久化存储 2.1持久化存储原理&#xff1a; 2.2使用示例&#xff1a; …

利用Spark将Kafka数据流写入HDFS

利用Spark将Kafka数据流写入HDFS 在当今的大数据时代&#xff0c;实时数据处理和分析变得越来越重要。Apache Kafka作为一个分布式流处理平台&#xff0c;已经成为处理实时数据的事实标准。而Apache Spark则是一个强大的大数据处理框架&#xff0c;它提供了对数据进行复杂处理…

【Web爬虫】爬⾍⿊⻰江省与四川省农机补贴以及数据分析

目录 一、实验目的 二、实验内容 2.1 实验爬取数据选择 2.2python代码爬取数据 2.3数据处理与分析 三、实验原理 3.1 python 连接网页的两种方式 3.1.1 使用requests连接网页 3.1.2 使用from selenium import webdriver连接网页&#xff0c;创建网页测试 3.2 python …

HarmonyOS NEXT应用开发之@State装饰器:组件内状态

State装饰的变量&#xff0c;或称为状态变量&#xff0c;一旦变量拥有了状态属性&#xff0c;就和自定义组件的渲染绑定起来。当状态改变时&#xff0c;UI会发生对应的渲染改变。 在状态变量相关装饰器中&#xff0c;State是最基础的&#xff0c;使变量拥有状态属性的装饰器&a…