Javascript 单击子元素时反应获取父元素的状态/数据
我有一个父元素Javascript 单击子元素时反应获取父元素的状态/数据,javascript,reactjs,redux,traversal,Javascript,Reactjs,Redux,Traversal,我有一个父元素li的构造,它包含一个链接和一个字体I。当我单击I时,我需要将父级标题(从redux状态)传递给函数 我是否需要遍历DOM树才能得到它 我是否以不同的方式设置事件处理程序 单击子元素时,如何访问父元素的状态 export default class DashContent extends React.Component { deleteBase(title) { this.props.dispatch(removeBase(title)) } render()
li
的构造,它包含一个链接和一个字体I
。当我单击I
时,我需要将父级标题(从redux状态)传递给函数
export default class DashContent extends React.Component {
deleteBase(title) {
this.props.dispatch(removeBase(title))
}
render() {
const baseList = this.props.bases.map(base => (
<li key={base.title} className="base">
<Link to={base.title}>{base.title}</Link>
<i className="fas fa-times" onClick={title => this.deleteBase(title)} />
</li>
));
}
return (
<ul>
{baseList}
<li>
<AddBase />
</li>
</ul>
)
}
导出默认类DashContent.Component{
deleteBase(标题){
此.props.dispatch(removeBase(标题))
}
render(){
const baseList=this.props.bases.map(base=>(
{base.title}
this.deleteBase(title)}/>
));
}
返回(
{baseList}
-
)
}
onClick={() => this.deleteBase(base.title)}
deleteBase
函数中,标题作为参数传递
base
对象本身的一个属性李>
这里有点困惑。你是说对父母满意吗?您可以通过向子组件传递回调来访问父组件的状态。不完全是这样。您可以看到
i
是map函数的一部分。它呈现一个li
,其中有一个很棒的字体图标。当用户单击i
时,我需要
中的base.title
。当前,当我单击i
时,已调度的removeBase
函数没有收到正确的基。title
哦,你的问题很简单。只是,我没有明白:)你能简单地解释一下为什么我们不把标题作为参数传递给deleteBase
函数吗?感谢您的有效回答您正在将参数传递给deleteBase
函数。但是,您不能从onClick
处理程序中获得它。您的地图中已经有了它。