我正在学习一些新近引入的React.Context API,但是我注意到各个示例在使用它方面存在一些不一致之处。有些使用原始的 Context.Consumer 方法,而另一些(包括React Docs)则使用静态的 Class.contextType 方法。有什么区别?为什么不一致?
答案 0 :(得分:4)
结果证明,静态Class.contextType 为newly introduced on React v16.6.0,因为 Context.Consumer 方法在类组件上被证明是有问题的。而且,两者的使用之间似乎并没有一个主要区别,这是静态的Class.Context仅允许您订阅单个上下文。
好消息是,它们似乎都可以可靠地监听Context的变化,这意味着,如果您只有一个Context API,那么两者都足够好。