React笔记:useState

news/2024/7/15 17:13:50 标签: react.js, 笔记, javascript

1 介绍

useState 是 React 中一个非常重要的钩子(Hook),允许在函数组件中添加状态。

2 基本用法

  • useState 是一个函数,它接收一个参数(初始状态值)并返回一个数组。
    • 返回的这个数组包含两个元素:当前的状态值和一个允许我们更新这个状态值的函数

2.1 用法举例

使用前端笔记:Create React App 初始化项目的几个关键文件解读-CSDN博客一样初始化的react程序,稍微修改一下App.js

javascript">import logo from './logo.svg';
import './App.css';

/
//新加的(开始)
import React, { useState } from 'react';

function Counter() {
  const [count, setCount] = useState(0);

  return (
    <div>
      <p>You clicked {count} times</p>
      <button onClick={() => setCount(count + 1)}>
        Click me
      </button>
    </div>
  );
}
//新加的(结束)
/

function App() {
  return (
    <div className="App">
      <header className="App-header">
        <img src={logo} className="App-logo" alt="logo" />

        {/*新加了底下这一行*/}

		<Counter />
        <p>
          Edit <code>src/App.js</code> and save to reload.
        </p>
        <a
          className="App-link"
          href="https://reactjs.org"
          target="_blank"
          rel="noopener noreferrer"
        >
          Learn React
        </a>
      </header>
    </div>
  );
}

export default App;

2.1.1 效果展示

每点一下”Click me' 计数器+1

2.1.2 详细分析改动

主要改动是这一块:

javascript">import React, { useState } from 'react';

function Counter() {
  const [count, setCount] = useState(0);

  return (
    <div>
      <p>You clicked {count} times</p>
      <button onClick={() => setCount(count + 1)}>
        Click me
      </button>
    </div>
  );
}
  • useState(0) 初始化 count 状态变量的值为 0
  • setCount 是一个函数,用于更新 count 的值。
  • 当按钮被点击(onClick被点击)时,setCount(count + 1) 被调用,更新 count 的值并重新渲染组件。


http://www.niftyadmin.cn/n/5079911.html

相关文章

uni-app 在已有的数据对象中动态添加更多的数据对象

原数据对象 flowData: {list: [], // 数据值column: 2, // 瀑布列数columnSpace: 2 // 瀑布列宽间距 } 动态添加后的数据对象 flowData: {list: [], // 数据值column: 2, // 瀑布列数columnSpace: 2, // 瀑布列宽间距column_1: [],column_2: [] } 动态添加更多的数据对象的…

Docker镜像容器简单案例

我们安装完Docker之后就可以练习了. 镜像 案例1-拉取、查看镜像 1&#xff09;首先去镜像仓库搜索nginx镜像&#xff0c;比如 : Docker Hub Container Image Library | App Containerization 搜索我们想要拉取的镜像 , 例如: nginx 复制命令&#xff1a; docker pull nginx …

千兆以太网传输层 UDP 协议原理与 FPGA 实现(UDP回环)

文章目录 前言心得体会一、UDP GMII 回环测试工程介绍二、UDP GMII 回环测试工程顶层设计三、UDP GMII 回环测试工程仿真设计四、UDP GMII 回环测试工程仿真波形五、UDP GMII 回环测试工程上板演示前言 经过前面章节的理论讲解和模块设计,相信大家已经对以太网传输以及如何实…

Layui合计自定义列

需求&#xff1a;第四列通过计算&#xff1a;27除以220 正常的汇总&#xff0c;增加这个属性就行 特殊的列&#xff0c;需要特殊处理 获取合计行&#xff1a;$(".layui-table-total div.layui-table-cell"); 获取某列的值&#xff1a;$($(".layui-table-total …

电脑屏幕怎么录制?5 个最佳免费录屏软件

您是否想使用网络摄像头录制优酷视频、抖音直播或在线课程等项目&#xff0c;但完全不知道如何开始&#xff1f; 不用担心。有很多软件选项可以帮助您。虽然每一款都有不同的功能&#xff0c;但它们都能够录制网络摄像头并输出精美的高质量视频。 以下是我们精选的最佳作品。…

增强基于Cortex-M3的MCU以处理480 Mbps高速USB

通用串行总线&#xff08;USB&#xff09;完全取代了PC上的UART&#xff0c;PS2和IEEE-1284并行接口&#xff0c;现在已在嵌入式开发应用程序中得到广泛认可。嵌入式开发系统使用的大多数I / O设备&#xff08;键盘&#xff0c;扫描仪&#xff0c;鼠标&#xff09;都是基于USB的…

OpenCV实现答题卡自动打分!

目录 1&#xff0c;主要原理以及函数介绍 全部代码&#xff0c;以 2 &#xff0c; 实现过程 3&#xff0c;结果展示 1&#xff0c;主要原理以及函数介绍 ap argparse.ArgumentParser() 创建一个ArgumentParser对象&#xff0c;并将其赋值给变量ap。这个对象可以接受我们的脚…

死锁,死锁避免

死锁是指两个或多个进程或线程&#xff0c;彼此持有对方所需要的资源&#xff0c;导致彼此等待对方释放资源而无法继续执行的状态。在Java中&#xff0c;死锁通常是由于多线程并发执行时&#xff0c;线程之间互相等待获取对方持有的锁或资源而产生的。 为了避免死锁&#xff0…