事件修飾符
- stop 的使用會阻止冒泡,但是同時綁定了一個非冒泡事件,會導致該元素上的catchEventName失效。
- prevent 可以直接干掉,因為uni-app里沒有什么默認事件,比如submit並不會跳轉頁面。
- self 沒有可以判斷的標識
- once 也不能做,因為uni-app沒有removeEventlistener,雖然可以直接在handleProxy中處理,但非常的不優雅,違背了原意,暫不考慮
- 按鍵修飾符:uni-app運行在手機端,沒有鍵盤事件,所以不支持修飾符。
事件綁定 @click
<template> <view> <view class="demo" @click="clickTest" @longtap="longtap"> </view> </view> </template> <script> var _self; export default{ data(){ return{ } }, onLoad() { _self=this; }, methods:{ //點擊事件 clickTest:function(e){ console.log('click'); }, //長安事件 longtap:function(e){ console.log('longtap'); } } } </script> <style> .demo{ width: 600px; height: 600px; background: #8F8F94; } </style>
事件傳參(動態參數):e.target.id
<template> <view> <view v-for="(item,index) in students" class="persons" @click="menuClick" v-bind:id="index" > {{index}}----{{item.name}} </view> </view> </template> <script> var _self; export default{ data(){ return{ students:[ {name:"張三"}, {name:"李四"} ] } }, onLoad() { _self=this; }, methods:{ //點擊事件 menuClick:function(e){ //獲取參數id值 console.log(e.target.id); }, } } </script> <style> .demo{ width: 600px; height: 600px; background: #8F8F94; } </style>