在当前div上定义一个点击事件
当然这里的data-xx名字时可以自己 定义的但是我们一般定义为与元素的值由对应意义的名字
<div onClick={this.handleClick}>
<div data-index='1'>小强</div>
<div data-index='2'>小红</div>
<div data-index='3'>小明</div>
<div data-index='4'>小目</div>
</div>
//之后我们去方法当中去定义一个对应的方法去获取值,会获取到自定义属性的一个对象集合
handleClick(event){
// 这样取值
const dataset = event.target.dataset;
const index = dataset.index;
console.log('当前元素index 值为 ', index);
}
还有的时候元素层级深,只想获取到当前绑定事件元素的自定义属性,请看下面场景;
<div >
<div data-index='1' onClick={this.handleClick}><span>小强</span></div>
<div data-index='2' onClick={this.handleClick}><span>小红</span></div>
<div data-index='3' onClick={this.handleClick}><span>小明</span></div>
<div data-index='4' onClick={this.handleClick}><span>小目</span></div>
</div>
//之后我们去方法当中去定义一个对应的方法去获取值,会获取到自定义属性的一个对象集合
handleClick(event){
// 这样需要把 target 改变成 currentTarget,避免点击到span, 取不到div上面的值
const dataset = event.currentTarget.dataset;
const index = dataset.index;
console.log('当前元素index 值为 ', index);
}