首页 > react的static函数设计的目的是什么呢?

react的static函数设计的目的是什么呢?

react的component有static属性,里面放函数,官方解释:

you can run them before any component instances are created, and the methods do not have access to the props or state of your components.

不理解既然不能取到props和state,那么和一个普通的函数有啥区别。

所以我的问题就是,react设计static函数到底是干嘛用的呢,最好结合具体场景说下,谢谢大家。


这里涉及到了ES6的class,我们定义一个组件的时候通常是定义了一个类,而static则是创建了一个属于这个类的属性或者方法。
组件则是这个类的一个实例,component的props和state是属于这个实例的,所以实例还未创建,我们又怎么可能读得到props和state呢?
总结来说static并不是react定义的,而加上static关键字,就表示该方法不会被实例继承,而是直接通过类来调用


与Java中的static类似,static方法属于class,但不属于这个class的任何instance。
例如你要写一个单例模式,可以用static解决问题。

【热门文章】
【热门文章】