五、state状态
1、状态就是组件描述某种显示情况的数据,由组件自己设置和更改
2、使用状态的目的就是为了在不同的状态下使组件的显示不同
3、
一、基本使用
- 状态(state)即数据,是组件自己内部的私有数据,只能在组件内部使用
- state的值是对象,表示一个组件中可以有多个数据
1 // state定义在类的构造方法中 2 import React, { Component } from 'react'; 3 4 class App extends Component { 5 // 构造函数初始state 6 constructor(props){ 7 super(props); 8 this.state = { 9 count: 0 10 } 11 } 12 render(){ 13 return <div>{this.state.count}</div> 14 } 15 } 16 17 export default App;
1 // state定义在类的成员属性中 2 import React, { Component } from "react"; 3 4 class App extends Component { 5 // 常规初始化 6 state = { 7 count: 0, 8 } 9 render() { 10 return <div>{this.state.count}</div>; 11 } 12 } 13 14 export default App;
二、修改状态
React无法直接修改state,
1 this.setState(state => { 2 return { 3 count: state.count + 1, 4 // .... 5 } 6 })
2、对象形式
1 this.setState({ 2 count: this.state.count + 1, 3 // .... 4 })
注意:
- 是否绑定了this
- 对象形式写法如果针对多个相同的修改操作,会合并掉多余的相同操作,例如:5次
+1
操作实际上只执行一次,也就有了1+1+1+1+1=1
三、
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧