微信小程序
小程序基础库: 2.14.4
使用框架: React
e.stopPropagation()
...执行其他方法
阻止冒泡,阻止跳转页面
未能阻止冒泡,执行了跳转界面
暂时解决方法:
e.stopPropagation()
setTimeout(() => {
...执行其他方法
}, 100)
Taro CLI 3.0.25 environment info:
System:
OS: Windows 10
Binaries:
Node: 10.15.3 - E:\软件安装\运行环境相关\1.Node\node.EXE
Yarn: 1.22.4 - C:\Users\CTRL-WEB\AppData\Roaming\npm\yarn.CMD
npm: 6.14.10 - E:\软件安装\运行环境相关\1.Node\npm.CMD
FC页面、hooks、dva
提供一下 demo
提供一下demo
我也遇到了。
例如像这样的两个组件,Button组件被点击的时候依旧会执行console.log(1)
const Button = () => <View onClick={e=>e.stopPropagation()}>按钮</View>
const Box = () => <View onClick={()=>console.log(1)} ><Button/></View>
临时解决办法就是在调用组件的外面再写一个
taro版本3.0.22,e.stopPropagation()有效,试着升级到3.0.26,冒泡阻止不了了,就又回退了
临时解决办法就是在调用组件的外面再写一个然后阻止冒泡
再写一个是什么意思,麻烦大佬贴一下最简代码
taro版本
3.0.22,e.stopPropagation()有效,试着升级到3.0.26,冒泡阻止不了了,就又回退了
3.1.2也不行
@beysong 3.1.1 应该已经修复了,提供一下代码?
@beysong 3.1.1 应该已经修复了,提供一下代码?
https://github.com/beysong/taro-bug-demo
渲染属性的情况下可以复现
1,这里会出问题,不会组织冒泡
onClick={(e) => {
e.stopPropagation();
console.log("inner");
this.setState({
isOpened: true,
});
}}
2,这里正常,可以阻止冒泡
`onClick={(e) => {
e.stopPropagation();
console.log("inner");
}}`
Most helpful comment
临时解决办法就是在调用组件的外面再写一个然后阻止冒泡