react中state与setstate的使用
2024-09-25 09:34:05
我们可以利用state来定义一些变量的初始值
//放在construcor里
this.state = {
list: [1, 2, 3]
}
要更改state里的值,注意要遵循react里immutable规范,state不允许我们做任何改变,只能通过setState来更改
const list = [...this.state.list];
list.splice(0, 1);
this.setState({list:list});
强烈推荐setstate的写法如下:
const list = [...this.state.list];
list.splice(0, 1);
this.setState((prevState) => ({ //外面加小括号可以代替return
list: list
}));
还可以这样写
this.setState((prevState) => { //外面加小括号可以代替return
const list = [...prevState.list];
list.splice(0, 1);
return {list}
});
setState第二个参数回调函数,在setState设置完之后执行,可以对改变后的数据进行操作
this.setState((prevState) => { //外面加小括号可以代替return
const list = [...prevState.list];
list.splice(0, 1);
return {list}
}, () => {
console.log(this.state.list);
});
最新文章
- git配置
- C++内存分配及变长数组的动态分配
- ubuntu使用笔记
- Python使用中文注释和输出中文(原创)
- 直接使用提交过来的类来更新字段EntityState.Modified并过滤null值的方法
- java的nio之:java的nio系列教程之概述
- sgu - 274 - Spam-filter
- iOS 本地存储四种方法
- nginx 调优
- js 获取服务器控件
- php 单引号与双引号区别
- 轻量级mvvm Web开发框架 postby:http://zhutty.cnblogs.com
- Qt原始资源形象问题后删除
- PureLayout
- ionic3 自动创建启动背景splash以及图标icon
- iptables snat 和dnat说明
- 【转】Linux 虚拟内存和物理内存的理解
- shell脚本使用技巧3--函数调用
- 【LGP5176】公约数
- centos6.6 7 vim编辑器中文乱码
热门文章
- 【力扣】有序矩阵中第K小的元素
- c++和c中const的区别
- [BUUCTF]REVERSE——[2019红帽杯]easyRE
- [BUUCTF]REVERSE——SimpleRev
- selenium chrome一些配置问题
- 月薪过2w的IT程序员都是怎么做到的?
- myeclipse 安装spket
- DG修复:异常关库导致的数据库启动失败ORA-01110及GAP修复
- c++之面试题(2)实现字符串的分割函数SplitStr
- 【LeetCode】1470. 重新排列数组 Shuffle the Array (Python)