jd-opensource / jd-opensource/taro-ui
AtButton无法阻止冒泡 [ e.stopPropagation() ]
- Dominant language
- TypeScript
- Stars
- 4.7k
- Forks
- 740
- PR merge metrics
- No merged PRs in 30d
Description
### Taro UI 版本信息
2.2.4
### 问题描述
外层绑定事件时,内层AtButton绑定事件(onClick),无法通过e.stopPropagation()阻止事件冒泡,外层Click依然会被触发;
而使用Taro.Button无此问题
### 复现步骤
1. View包裹AtButton,同时注册click事件分别为onClickOuter, onClickInner
2. AtButton onClickInner中使用e.stopPropagation()尝试阻止冒泡
3. onClickInner, onClickOuter都会被触发
### 复现代码
```jsx
import Taro, { Component } from '@tarojs/taro'
import { View } from '@tarojs/components'
import { AtButton } from 'taro-ui'
export default class EventStop extends Component {
constructor(props) {
super(props)
}
onClickOuter(e) {
console.log('onClickOuter', JSON.stringify(e))
}
onClickInner(e) {
e.stopPropagation()
console.log('onClickInner', JSON.stringify(e))
}
render() {
return (
阻止冒泡
)
}
}
```
### 报错信息
DEMO输出日志:
```
onClickInner {"type":"tap","timeStamp":3114,"target":{"id":"","offsetLeft":0,"offsetTop":0,"dataset":{"eContactSo":"this","eErrorSo":"this","eGetphonenumberSo":"this","eGetuserinfoSo":"this","eOpensettingSo":"this"},"x":310,"y":17},"currentTarget":{"id":"","offsetLeft":0,"offsetTop":0,"dataset":{"eTapSo":"this"},"x":310,"y":17},"mark":{},"detail":{"x":310,"y":17},"touches":[{"identifier":0,"pageX":311,"pageY":17,"clientX":311,"clientY":17,"force":1}],"changedTouches":[{"identifier":0,"pageX":311,"pageY":17,"clientX":311,"clientY":17,"force":1}],"mut":false}
onClickOuter {"type":"tap","timeStamp":3114,"target":{"id":"","offsetLeft":0,"offsetTop":0,"dataset":{},"x":310,"y":17},"currentTarget":{"id":"","offsetLeft":0,"offsetTop":0,"dataset":{"eTapSo":"this"},"x":310,"y":17},"mark":{},"detail":{"x":310,"y":17},"touches":[{"identifier":0,"pageX":311,"pageY":17,"clientX":311,"clientY":17,"force":1}],"changedTouches":[{"identifier":0,"pageX":311,"pageY":17,"clientX":311,"clientY":17,"force":1}],"mut":false}
```
### 系统信息
```
Taro CLI 1.3.26 environment info:
System:
OS: Windows 10
Binaries:
Node: 12.13.1
Yarn: 1.19.1
npm: 6.13.0
```
Contributor guide
Assessment
This issue has not been assessed yet.