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

React hooks之useState用法(一)

系列文章目录

学习React已经有很长的一段时间了,今天决定重新回顾一下跟React相关的一些知识点


文章目录

  • 系列文章目录
    • 结构如下
  • 一、hooks是什么?useState可以能做什么
  • 二、如何使用useState()
    • 第一步:创建【函数组件(无状态组件)】
      • 函数组件(Child)代码如下:
    • 第二步:引入useState
      • 代码如下
    • 第三步:声明状态数据
      • 代码如下
      • tableColumns 的数据
    • 第四步:渲染并修改Table数据
      • 代码如下
      • 结果图如下:
        • 初始渲染图如下:
        • 点击按钮后的渲染图如下:
  • 三、代码解释如下图所示
    • 主体代码
  • 四、总结


结构如下

本文讲述的主要内容如下:

1、useState是什么?
2、useState能做什么?
3、useState的使用场景都有哪些?


一、hooks是什么?useState可以能做什么

1.Hook 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性。
2.useState是Hook中的一员,主要是用来在【无状态组件(函数组件)】声明可修改的状态的 一个Api

二、如何使用useState()

第一步:创建【函数组件(无状态组件)】

React 提供的Hooks的Api主要的是为了节省开发者的代码书写量,同时也对 函数组件的功能进行了拓展!!

函数组件(Child)代码如下:

import React from "react";
import './index.css';//这里引入了Ant Design React 组件
import { Space, Table, Tag, Button } from 'antd';export default function Child() {//这里引入了Ant Design React 组件return <Space> </Space>
}

第二步:引入useState

代码如下

import React, { useState } from "react";

第三步:声明状态数据

代码如下

   const [tableData, setTableData] = useState([{ age: 1, name: 'xioatian', height: 123 }])//这里是我导入的外部的一个tableColumnsconst [tableColumn] = useState(tableColumns)

tableColumns 的数据

export const tableColumns = [{title: "姓名",dataIndex: "name",key: "name",},{title: "年龄",dataIndex: "age",key: "age",},{title: "姓名",dataIndex: "height",key: "height",},
];

第四步:渲染并修改Table数据

代码如下

import React, { useState, useEffect } from "react";
import './index.css';
import { Space, Table, Tag, Button } from 'antd';
import { tableColumns } from "./dataScource";export default function Child() {//定义了 tableData 数据。 setTableData修改方法const [tableData, setTableData] = useState([{ age: 1, name: 'xioatian', height: 123 }])//定义了 tableColumn 数据。(tableColumns是外部导入的)const [tableColumn] = useState(tableColumns)return <Space>//此处是设置了一个点击事件,点击后触发setTableData方法修改数据<Button onClick={() => { setTableData([{ name: '123', age: 3, height: 0 }]) }}>点击我修改Table数据</Button><Table style={{ width: '600px' }} columns={tableColumn} dataSource={tableData}></Table></Space>
}

结果图如下:

初始渲染图如下:

在这里插入图片描述

点击按钮后的渲染图如下:

在这里插入图片描述

三、代码解释如下图所示

主体代码

在这里插入图片描述

四、总结

useState用法非常的 So Easy!!!!!!!!!!💪💪💪
后续更新,useState更新慢的问题

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

相关文章:

  • spring的简单理解
  • Docker调用Intel集显实现FFmpeg硬解码
  • 端到端模型(end-to-end)与非端到端模型
  • uniApp封装一个滑块组件
  • 运动基元(二):贝塞尔曲线
  • Android 11.0 关于Launcher3中调用截图功能总是返回null的解决方案
  • random随机数
  • 【金三银四系列】Spring面试题-上(2023版)
  • linux基本功系列之tar命令实战
  • Prometheus服务发现
  • 【Spring6源码・MVC】请求处理流程源码解析
  • elasticsearch term match 查询
  • canal使用说明:MySQL、Redis实时数据同步
  • 计算机视觉框架OpenMMLab开源学习(三):图像分类实战
  • awk命令
  • LocalDateTime获取时间的年、月、日、时、分、秒、纳秒
  • MoveIT Rviz和Gazebo联合仿真
  • ESP32S2(12K)-DS18B20数码管显示温度
  • linux栈溢出定位
  • CSS基础:选择器和声明样式
  • VS中安装gismo库
  • 元学习方法解决CDFSL以及两篇SOTA论文讲解
  • 大数据之------------数据中台
  • Python 中 字符串是什么?
  • OJ刷题Day1 · 一维数组的动态和 · 将数字变成 0 的操作次数 · 最富有的客户资产总量 · Fizz Buzz · 链表的中间结点 · 赎金信
  • 【数据结构】栈——必做题
  • LearnOpenGL 笔记 - 入门 04 你好,三角形
  • keepalived+mysql高可用
  • JAVA工具篇--1 Idea中 Gradle的使用
  • 弄懂自定义 Hooks 不难,改变开发认知有点不习惯