state为什么要放到 constructor中,直接在class中写state={...}不行吗

来源:7-12 setState何时会合并state

慕仰3306263

2020-08-22

写回答

3回答

yuexiaqingmiao

2022-08-04

可以放,以前记得react的文档里面有提到说只是一种提案。现在的react文档中已经放了一个mdn的链接

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Public_class_fields#public_instance_fields

`If calling bind annoys you, there are two ways you can get around this. You can use public class fields syntax to correctly bind callbacks` --- https://reactjs.org/docs/handling-events.html


0
0

慕粉3871079

2021-02-24

我试过是可以用的,但是规范上来讲,定义的变量还是写在构造函数里吧

0
0

双越

2020-08-22

直接在 class 中写 state={...} 那是静态属性,不是实例属性。

0
1
内六角
直接写 state={...} 也是实例属性,和写在 constructor 中没区别,如果加上 static 关键字才是静态属性。
2020-09-29
共1条回复

2024版 前端框架及项目面试 聚焦Vue3/React/Webpack

面向1-3年前端的框架及项目面试“刚需内容”

4663 学习 · 1644 问题

查看课程