#author("2022-05-12T13:33:44+08:00","default:Admin","Admin") #author("2022-05-12T13:34:14+08:00","default:Admin","Admin") [[Vue]] &color(red){※前提条件:本文基于 Vue 2.0 创作}; #contents * v-on [#b3d496f9] v-on 指令,用于监听 DOM 事件: v-on 指令,用于监听 DOM 事件: #codeprettify{{ <a v-on:click="doSomething"> ... </a> <button v-on:mouseover="overColor" v-on:mouseout="outColor" v-bind:style="color">鼠标经过</button> }} #codeprettify{{ <script> new Vue({ el:"#box", data:{ message:"hello,vue", color:'color:blue;' }, methods:{ reverseMessage:function(){ this.message=this.message.split('').reverse().join(''); }, overColor:function(){ this.color="color:green"; }, outColor:function(){ this.color="color:blue"; } } }) </script> }} #codeprettify{{ <div id="app"> <button v-on:click="counter += 1">增加 1</button> <p>这个按钮被点击了 \{\{ counter \}\} 次。</p> </div> <script> new Vue({ el: '#app', data: { counter: 0 } }) </script> }} ** 缩写 [#e9c75d44] #codeprettify{{ <!-- 完整语法 --> <a v-on:click="doSomething"></a> <!-- 缩写 --> <a @click="doSomething"></a> }} ** @click.native [#j1364420] 在组件上绑定@click="gaBack"事件,click事件无法触发也不生效,需要通过使用@click.native="gaBack",才能够执行gaBack方法。@click.native只能用在组件 <Header :headerStr="headerStr" @click.native="gaBack"></Header> * 事件修饰符 [#kc072b74] Vue.js 通过由点 . 表示的指令后缀来调用修饰符。 - stop - 阻止冒泡 - prevent - 阻止默认事件 - capture - 阻止捕获 - self - 只监听触发该元素的事件 - once - 只触发一次 - left - 左键事件 - right - 右键事件 - middle - 中间滚轮事件 #codeprettify{{ <!-- 阻止单击事件冒泡 --> <a v-on:click.stop="doThis"></a> <!-- 提交事件不再重载页面 --> <form v-on:submit.prevent="onSubmit"></form> <!-- 修饰符可以串联 --> <a v-on:click.stop.prevent="doThat"></a> <!-- 只有修饰符 --> <form v-on:submit.prevent></form> <!-- 添加事件侦听器时使用事件捕获模式 --> <div v-on:click.capture="doThis">...</div> <!-- 只当事件在该元素本身(而不是子元素)触发时触发回调 --> <div v-on:click.self="doThat">...</div> <!-- click 事件只能点击一次,2.1.4版本新增 --> <a v-on:click.once="doThis"></a> }} #hr(); コメント: #comment_kcaptcha