用过state的话会明白,state无法直接修改,需要通过setState方法去修改。
- setState()是异步的,不会马上去改变,而是会排队等待处理,所以调用该修改方法后并不一定能得到最新的state值。
- setState会引起没有必要的渲染。其实我有时候挺喜欢这点的,但是只有在数据和视图层有关系的时候才喜欢。
- setState如果调用的不合适,会引起死循环。比如你在render里调用了该方法。(踩过坑)
用过state的话会明白,state无法直接修改,需要通过setState方法去修改。