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

尚硅谷react教程_扩展_stateHook

1.类式组件写

import React, {Component} from 'react';

export default class Demo extends Component {
    state = {count:0}
    add = () => {
        this.setState(state=>({
            count:state.count+1
        }))
    }
    render() {
        return (
            <div>
                <h2>当前求和为{this.state.count}</h2>
                <button onClick={this.add}>点我+1</button>
            </div>
        );
    }
}

 2.函数式组件写的

import React from 'react';

// 函数式组件
function Demo() {
    const [count,setCount] = React.useState(0)
    const [name,setName] = React.useState('tom')

    // 加的回调
    function add() {
        // setCount(count+1) // 第一种写法
        // setCount((count)=>{ // 第二种写法
        //     return count+1
        // })

        setCount(count=> count+1) // 第二种写法的简写方式
    }

    // 修改名字
    function changeName() {
        setName('jack')
    }
    return (
        <div>
            <h2>当前求和为:{count}</h2>
            <h2>我的名字为:{name}</h2>
            <button onClick={add}>点我+1</button>
            <button onClick={changeName}>点我改名</button>
        </div>
    )
}

export default Demo;
State Hook
(1)State Hook让函数组件也可以有state状态,并进行状态数据的读写操作做
(2)语法:const [xxx,setXxx] = React.useState(initValue)
(3)useState()说明:
    参数:第一次初始化指定的值在内部作缓存
    返回值:包含2个元素的数组,第一个为内部当前状态值,第二个为更新状态值的函数
(4)setXxx()2种写法:
    setXxx(newValue):参数为非函数值,直接指定新的状态值,内部用其覆盖原来的状态值
    setXxx(value => newValue):参数为函数,接收原来的状态值,返回新的状态值,内部用其覆盖原来的状态值

http://www.kler.cn/a/376951.html

相关文章:

  • YARN WebUI 服务
  • MySQL insert or update方式性能比较
  • 使用python将多个Excel表合并成一个表
  • 中国科技统计年鉴EXCEL版(2021-2023年)-社科数据
  • PHP语言的数据库编程
  • Linux 正则表达式 ⑪
  • 25国考照片处理器使用流程图解❗
  • 整理 【 DBeaver 数据库管理工具 】的一些基础使用
  • 【PostgreSQL】pgsql | 字符串转日期
  • 新需求编码如何注意低级错误代码
  • 微模型开发迫在眉睫
  • Kubernetes实战——部署微服务项目(一)
  • 深入理解 lsof:Linux 系统中的文件打开状态洞察者
  • Windows下基于fping进行批量IP测试
  • html简易流程图
  • 分享一个免费的网页转EXE的工具
  • 归并排序算法
  • js数组和list和map基础用法
  • 【补补漏洞吧 | 02】等保测评ZooKeeperElasticsearch未授权访问漏洞补漏方法
  • 【Cri-Dockerd】安装cri-dockerd
  • 气膜网球馆:城市文体生活的新标杆—轻空间
  • 15分钟学 Go 第 28 天:JSON处理
  • 向量模型Jina Embedding: 从v1到v3论文笔记
  • RabbitMQ几大应用问题
  • css中的样式穿透
  • 使用Flask构建RESTful API