我有一个名为Conversation的React组件,它可能会渲染很多部件。我需要每个部分知道对话是否滚动。这有可能,如果是这样的话?
class Conversation extends Component {
handleScroll() {
console.log('Each Part should be told that I just fired');
}
render() {
<div className="conversation" onScroll={this.handleScroll.bind(this)}>
<Part />
<Part />
<Part />
</div>
}
}
答案 0 :(得分:0)
父组件应始终通过道具将信息传递给子组件,例如:
<Part someProp={this.getPartProps()} />
因此,要弄清楚每个Part
组件需要哪些信息,并提供它。
编辑:
要从事件处理程序传播该信息,您需要使用组件本地状态:
handleScroll: function() {
this.setState({scrollFired: true});
}
然后你可以在Part:
上设置道具<Part scrollFired={this.state.scrollFired} />