React中,上下文传值是怎么使用的?

2022-11-29 15:09:39
在典型的 React 应用中,数据通过 props 自上而下传递,但是对于某些类型的 props,比如主题或者首选语言等,这样层层嵌套的传递比较麻烦,中间的组件可能用不到这些 props,这时候使用上下文(Context)不失为一种好的选择。 Context 旨在共享一个组件树内可被视为“全局”的数据,使用 context 可以避免通过中间元素传递 props。 每个 Context 对象都附带一个 Provider 组件,后代的使用组件(Consumer) 可以订阅 context 的改变。provider 组件通过 value 属性传递给使用组件。每当 value 属性发生变化时,所有后代的使用组件都将重新渲染。