react 中setState 的三种写法

news2024/11/20 11:22:40

目录

1:使用对象形式的setState:

2:使用函数形式的setState:

3:使用回调函数:


1:使用对象形式的setState

this.setState({ count: 0 });

2:使用函数形式的setState:

this.setState((prevState,props) => {
  return { count: prevState.count + 1 };
});

 

3:使用回调函数

this.setState({ count: this.state.count + 1 }, () => {
  console.log('状态已更新,组件已重新渲染');
});

完整示例:

import React, { Component } from 'react';

class Counter extends Component {
    constructor(props) {
        super(props);
        this.state = {
            count: 0,
        };
    }

    increment = ()=> {
        // 使用对象形式的 setState
        this.setState({
            count: this.state.count + 1
        });

        // 使用函数形式的 setState
        this.setState((prevState,props) => {
            console.log(prevState.count)
            console.log(props)
            return { count: prevState.count + 1 };
        });

        // 使用回调函数
        this.setState({
            count: this.state.count + 1
        },
            () => {
            console.log('状态已更新,组件已重新渲染');
        });
    }

    render() {
        const {count} = this.state
        return (
            <div>
                <p>Count: {count}</p>
                <button onClick={this.increment}>增加计数</button>
            </div>
        );
    }
}

export default Counter;

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

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

相关文章

演讲回顾 | 龙智专家分享“支撑、共享与安全:芯片开发中的数字资产管理”

近日&#xff0c;龙智亮相D&R IP-SoC China 2023 Day&#xff0c;呈现集成了Perforce与Atlassian产品的芯片开发解决方案&#xff0c;助力企业更好、更快地进行芯片开发。 龙智资深顾问、技术支持部门负责人李培在展会现场带来了主题为《支撑、共享与安全&#xff1a;芯片…

C语言里的static变量其他语言是看不上还是学不去?

C语言里的static变量其他语言是看不上还是学不去? static变量在C语言中被用于具有静态存储期的局部变量或全局变量。它有以下几个特点&#xff1a; 1. 静态存储期&#xff1a;static变量在程序执行时分配内存&#xff0c;直到程序结束才会释放&#xff0c;其生命周期与程序的…

1024程序员节献礼,火山引擎ByteHouse带来三重产品福利

更多技术交流、求职机会&#xff0c;欢迎关注字节跳动数据平台微信公众号&#xff0c;回复【1】进入官方交流群 随着信息技术飞速发展&#xff0c;互联网、Web3、物联网、人工智能相继出现。 在这近三十年的高速发展中&#xff0c;“程序员”也成为构建丰富互联网世界的中坚力量…

FC-TSGAS-1624 CP451-10 MVI56E-MNETC IC697CMM742

FC-TSGAS-1624 CP451-10 MVI56E-MNETC IC697CMM742. Variscite的DART-MX8M-PLUS和VAR-SOM-MX8M-PLUS基于恩智浦i.MX 8M Plus SoC&#xff0c;集成人工智能能力高达每秒2.3万亿次运算(TOPS)。这些产品&#xff0c;结合海螺-8 AI处理器提供多达26个top&#xff0c;显著优于市场…

idea必装的插件 Spring Boot Helper 插件(创建 Spring Boot 项目)

Spring Spring让Java程序更加快速,简单和安全.Spring对于速度、简单性和⽣产⼒的关注使其成为 世界上最流⾏的Java框架。Spring官⽅提供了很多开源的项⽬,覆盖范围从Web开发到⼤数据,Spring发展到了今天,已经形成了⾃ ⼰的⽣态圈.我们在开发时,也倾向于使⽤Spring官⽅提供的技术…

大热电视剧《好事成双》里IT故事:科班程序员指法篇

自2023年9月19日在央视八套首播&#xff0c;并在腾讯视频同步播出以来&#xff0c;电视剧《好事成双》聚焦当代社会环境&#xff0c;《好事成双》用生动的群像故事触动人心&#xff0c;描绘了一幅当代都市男女的生活画卷&#xff0c;热度持续走高&#xff0c;成为中秋、国庆假日…

如何判断无损连接(例题)

目录 1. 定义2. 例题3. 补充 1. 定义 无损连接&#xff1a; 如果在关系模式的分解中&#xff0c;能够通过连接已分解的子关系来获得原始关系的信息&#xff0c;而不引入任何数据损失 候选关键字&#xff1a; 候选关键字是能够唯一标识每个元组的属性集。 2. 例题 设关系模式…

在Xamarin.Android项目中调用自己写的java jar包

一、开发环境 1.IntelliJ IDEA 2023.2.3 (Community Edition) 2.Visual Studio 2019 (v16.11.30) 3.Windows PowerShell 二、打开IDEA&#xff0c;编写Java脚本并编译为jar文件 1.打开IDEA--->File--->New--->Project... 三、打开Visual Studio 2019&#xff0c;…

SpringBoot_minio sdk使用自签名https证书错误处理

minio sdk使用自签名https证书错误处理 1.问题描述1.1 报错日志1.2 maven 依赖配置1.3 当前spring MinioClient配置 2.问题分析3.问题解决3.1 使用受信任的证书3.2 忽略证书验证3.2.1 minio客户端3.2.2 minio sdk 忽略证书验证3.2.2.1 拓展: 补充minioclient请求日志 4. 问题总…

如果重回大一学软件工程,你会做什么?

如果重回大一学软件工程&#xff0c;你会做什么&#xff1f; 说白了&#xff0c;就是想要一个过来人的学习路线呗&#xff1f;1、学好线性代数和离散数学&#xff0c;因为追本溯源&#xff0c;计算机行业的本质就是数学&#xff0c;更是算法、机器学习&#xff0c;视觉处理这些…

人工智能算法PPT学习

YOLO You only look once 是一种图像识别算法&#xff0c;速度较快。高效、灵活、泛化性能好&#xff0c;在工业中较为受欢迎。 图像金字塔 一幅图像的多个不同分辨率的子图构成的图像集合。是通过一个图像不断的降低采样率产生的&#xff0c;最小的图像可能仅仅有一个像素点…

Linux本地RStudio工具安装指南及远程访问配置安装RStudio Server

文章目录 前言1. 安装RStudio Server2. 本地访问3. Linux 安装cpolar4. 配置RStudio server公网访问地址5. 公网远程访问RStudio6. 固定RStudio公网地址 前言 RStudio Server 使你能够在 Linux 服务器上运行你所熟悉和喜爱的 RStudio IDE&#xff0c;并通过 Web 浏览器进行访问…

【C++项目】高并发内存池第三讲PageCache框架涉及+核心实现(上)

PageCache 1. PageCache框架设计1.1整体设计1.2CentralCache向PageCache申请内存的逻辑设计 2.PageCache的核心框架实现这里着重介绍一下CentralCache向PageCache申请内存的过程&#xff1a; 1. PageCache框架设计 1.1整体设计 回顾: 如图所示 内存申请的过程是逐步往下的&a…

让你随时随地访问金蝶云星空企业版v8.0,内网穿透轻松实现远程办公!

文章目录 前言1. 金蝶云星空企业版v8.0安装下载1.1 登录金蝶官网下载安装包1.2 常见的安装下载问题 2. 金蝶云星空配置SQL Sever数据库2.1 创建数据管理中心2.2 创建完成后在服务器登录管理站点 3. 下载安装注册cpolar3.1 公网访问测试 4. 固定连接公网地址 前言 金蝶云星空专注…

【C++】二叉树进阶 -- 详解

一、二叉搜索树概念 二叉搜索树 又称二叉排序树&#xff0c;它或者是一棵空树&#xff0c;或者是具有以下性质的二叉树&#xff1a; 若它的左子树不为空&#xff0c;则左子树上所有节点的值都小于根节点的值 若它的右子树不为空&#xff0c;则右子树上所有节点的值都大于根节点…

API接口采集商品详情页面数据(H5端和PC端)item_get-获得淘宝商品详情

API接口是一种商业软件开发工具&#xff0c;可以帮助开发者实现业务需求。通过 API接口&#xff0c;开发人员可以快速搭建自己的应用&#xff0c;实现数据采集分析和处理&#xff0c;也可以通过这个接口完成与其它系统的集成与通信。电商API就是各大电商平台提供给开发者访问平…

深度学习中的不确定性综述

领域学者&#xff1a; http://www.gatsby.ucl.ac.uk/~balaji/ 论文标题&#xff1a; A Survey of Uncertainty in Deep Neural Networks 论文链接&#xff1a; https://arxiv.org/pdf/2107.03342.pdf 概要 在过去的十年中&#xff0c;神经网络几乎遍及所有科学领域&#x…

Mac电脑怎么在Dock窗口预览,Dock窗口预览工具DockView功能介绍

DockView是一款Mac电脑上的软件&#xff0c;它可以增强Dock的功能&#xff0c;让用户更方便地管理和切换应用程序。 DockView的主要功能是在 DockQ&#xff0c;栏上显示每个窗口的缩略图&#xff0c;并提供了一些相关的操作选项。当用户将鼠标悬停在Dock栏上的应用程序图标上时…

Centos磁盘问题小纪

场景说明 放个windows的图片镇楼&#xff0c;在给一个centos的来说明问题&#xff0c;咋了&#xff0c;好好的系统&#xff0c;啥也不能干了 来先上一波命令分析下问题 查看挂载 mount 重新挂载数据 mount -o remount, rw / 查看磁盘 df -h 查看分区挂载详情 rw读写权限 mount …

顶级玩家:一招搞定 App 自动化老大难问题

很多人在学习 App 自动化或者在项目中落地实践 App 自动化时&#xff0c;会发现编写的自动化脚本无缘无故的执行失败、不稳定。 而导致其问题很大原因是因为应用的各种弹窗&#xff08;升级弹窗、使用过程提示弹窗、评价弹窗等等&#xff09;&#xff0c;比如这样的&#xff1a…