【发布时间】:2016-12-01 21:05:11
【问题描述】:
这是一个基本组件。 <ul> 和 <li> 都具有 onClick 功能。我只想触发<li> 上的onClick,而不是<ul>。我怎样才能做到这一点?
我玩过 e.preventDefault()、e.stopPropagation(),但无济于事。
class List extends React.Component {
constructor(props) {
super(props);
}
handleClick() {
// do something
}
render() {
return (
<ul
onClick={(e) => {
console.log('parent');
this.handleClick();
}}
>
<li
onClick={(e) => {
console.log('child');
// prevent default? prevent propagation?
this.handleClick();
}}
>
</li>
</ul>
)
}
}
// => parent
// => child
【问题讨论】:
标签: reactjs onclick event-propagation