如何解决图纸中附带的问题?
我正在谈论不使用redux的最佳可能使用方式。
在嵌套组件中按下按钮时,另一个组件中的某些内容必须更改(它不会继承自自身)
例如,在一个组件中,我选择元素,在另一个组件中,我想显示细节。
答案 0 :(得分:1)
您可以让一个共享的父级保持您想要更改的状态,并传递给第一个组件,同时将onClick函数发送给另一个组件。然后,当一个组件通过onClick函数更改状态时,更改后的属性将传递给第二个组件。
答案 1 :(得分:0)
您不应通过一个组件从一个组件更改状态:
https://reactjs.org/docs/faq-state.html
props
传递给组件(类似于功能参数) 而state
是在组件内管理的(类似于变量 在函数中声明)。
对于组件之间的“状态”,您应该通过react-redux
答案 2 :(得分:0)
首先,我建议您以反应来研究lift state up。
现在,您将如何做:(只是一个伪示例)
ParentComponent
onClick={this.onClick} stateProps={this.state.stateProps}
onClick() {
this.setState()
}
ComponentA
onClick={props.onClick}
ComponentB
console.log(props.stateProps)
该组件的使用方式如下:(再次只是一个伪示例)
<ParentComponent onClick={this.onClick} stateProps={this.state.stateProps}>
<ComponentA onClick={props.onClick} />
<ComponentB stateProps={props.stateProps} />
</ParentComponent>