在React的嵌套组件树中,如果希望子组件影响父组件中的状态,则传递绑定的回调。
React是否支持侦听来自深层嵌套组件的事件?现在,如果我有一个包含5个组件深度的组件树,则需要通过每个组件传递prop
回调,这是显式的,不错的,但有些不灵活。
答案 0 :(得分:0)
您绝对应该检查一下React Context。简单地说,它是一个State或Reducer(如果将其与useReducer挂钩一起使用),则可以与深层嵌套的子对象共享,而无需将其作为道具传递。
moduleB
然后在链的某个地方,您可以像下面这样使用
const SomeContext = createContext();
<SomeContext.Provider value={useReduce(reducerFunction, initialState)}>
// children
</SomeContext.Provider>
因此,您无需将该值作为prop传递,您唯一需要做的就是从创建它的文件中导入此SomeContext。 这是部分伪代码,但反映了这个想法