@tap.stop阻止事件繼續傳播
阿新 • • 發佈:2021-02-05
技術標籤:uni-appvuejavascript
在uni-app開發當中,難免會遇到外層view巢狀內層view,又同時都含有點選事件,這樣就會起衝突。為了防止事件的繼續傳播我們就會用到事件修飾符.stop ,先看程式碼
<template> <view class="wai" @tap="waiTab"> <h5>外面</h5> <view class="nei" @tap="neiTab"> <h5>內部</h5> </view> </view> </template> <script> export default { data() { return { } }, methods: { waiTab(){ console.log("點選了外邊") }, neiTab(){ console.log("點選了內部") } } } </script> <style> .wai{ width: 100%; height: 100px; display: flex; justify-content: center; background-color: #0000FF; } .nei{ display: flex; justify-content: center; align-items: center; width: 50px; height: 50px; background-color: #00CE47; } </style>
效果是這樣的:
當我們點選外部時:
當我們點選內部時:
解決方法:只需在@tap後面加.stop就可以阻止事件繼續傳播
<view class="wai" @tap.stop="waiTab">
<h5>外面</h5>
<view class="nei" @tap.stop="neiTab">
<h5>內部</h5>
</view>
</view>