阻止冒泡

由于小程序本身没有阻止事件冒泡的方式,而是采用不同的方法属性来声明阻止冒泡(如 微信小程序的 catchtap),所以 Remax 自己实现了 stopPropagation 方法。

我们建议在 remax 中不要使用 catchtap 的方式,以免出现未知的问题_ 如果你使用了小程序原生组件,原生组件中的点击事件没有 stopPropagation 方法,不支持阻止冒泡。

用法如下:

  1. function Page() {
  2. function handleFooClick(event) {
  3. event.stopPropagation();
  4. }
  5. function handleBarClick() {
  6. ...
  7. }
  8. return (
  9. <View onClick={handleBarClick}>
  10. bar
  11. <View onClick={handleFooClick}>
  12. foo
  13. </View>
  14. </View>
  15. )
  16. }

当你点击 foo 标签时,将会触发 handleFooClick 回调,但不会执行 handleBarClick