好家伙,补基础加实践

1.绑定事件

我们使用v-on(简写为@)来绑定事件

写个例子,

按钮绑定数字加一(太tm经典了)

在<button>元素中使用@点击事件绑定方法"的"add"(方法可传参)

<div id="app">
差值语法{{count}}
<div>count的值为:{{count}}</div>
<button @click="add(1)">是兄弟就来点我,点我加一</button>
</div> <script>
const vm = new Vue({
el:'#app',
data:{ count:1, },
methods:{ add(n){
this.count =this.count + n,
console.log(n)
}
}
}) </script>

2.默认事件

现在假设我们要实现一个按钮变色的功能

2.1.找DOM元素

我们先让控制台去打印一个默认事件,

将add处的参数改掉,然后"console.log(e)"会将"e"作为默认事件打印出来

<div id="app">

        差值语法{{count}}
<div>count的值为:{{count}}</div>
<button @click="add">是兄弟就来点我,点我加一</button>
</div> <script>
const vm = new Vue({
el:'#app',
data:{ count:1, },
methods:{ add(e){
this.count =this.count + 1,
console.log(e)
}
}
}) </script>

随后在这个事件中找到他的DOM元素

然后对代码稍作更改

<div id="app">
差值语法{{count}}
<div>count的值为:{{count}}</div>
<button @click="add">是兄弟就来点我,点我加一</button>
</div>
<script>
const vm = new Vue({
el:'#app',
data:{ count:1, },
methods:{ add(n){
this.count =this.count + 1,
console.log(n) if(this.count%2===0){
n.target.style.backgroundColor ='red'
}else{
n.target.style.backgroundColor ='' } }
} }) </script>

搞定,

2.2.$event

  如果"add"方法中我们需要传参,那么就无法直接使用"console.log(e)"直接打印默认事件了

  但是我们有$event

  vue提供了内置变量,名字叫做$event,他就是原生DOM的事件对象e

  使用方法:

<button @click="add(n,$event)">是兄弟就来点我,点我加一</button>

 add(n,e){
this.count =this.count + n,
console.log(n)
      }

3.事件修饰符

在事件处理函数中调用 event.preventDefault() 或 event.stopPropagation()是非常常见的需求

。因此,vue 提供了事件修饰符的概念,来辅助程序员更方便的对事件的触发进行控制。常用的5个事件修饰符如下:

修饰符     说明

.prevent    阻止默认行为(例如:阻止a连接的跳转、阻止表单的提交等)

.stop         阻止事件冒泡.

.capture    以捕获模式触发当前的事件处理函数

.once        绑定的事件只触发1次

.self           只有在event.target是当前元素自身时触发事件处理函数

其中.prevent最常用

举个例子(实现阻止页面跳转)

<a href="http://www.baidu.com" @click.prevent="show">百度一下</a>

点击也无法进行跳转了

That's all

第六十一篇:Vue的绑定事件和修饰符的更多相关文章

  1. 第六十二篇:Vue的双向绑定与按键修饰符

    好家伙,依旧是vue的基础 1.按键修饰符 假设我们在一个<input>框中输入了12345,我们希望按一下"Esc" 然后删除所有前面输入的内容,这时候,我们会用到按 ...

  2. vue for 绑定事件

    vue for 绑定事件 <div id="pro_list" v-for="item in pro_list"> <div class=&q ...

  3. Vue.js学习笔记之修饰符详解

    本篇将简单介绍常用的修饰符. 在上一篇中,介绍了 v-model 和 v-on 简单用法.除了常规用法,这些指令也支持特殊方式绑定方法,以修饰符的方式实现.通常都是在指令后面用小数点“.”连接修饰符名 ...

  4. vue-learning:28 - component - 组件事件的修饰符`.native / .sync`,以及组件属性`model`

    组件事件的修饰符.native / .sync,以及组件属性model .native 原生事件修饰符 在一个组件中,如果我们为其绑定一个原生的点击事件@click,基本是无效的. 在vue中对组件绑 ...

  5. VUE3 之 多个 v-model 绑定及 v-model 修饰符的使用 - 这个系列的教程通俗易懂,适合新手

    1. 概述 洛克定律告诉我们: 当我们的目标很远大,远到我们都看不到终点时,放弃几率就会很大,就像跑马拉松比赛,由于时间长.距离长,很多选手都会选择在中途放弃. 其实有个好办法,就是拆分,把大目标拆分 ...

  6. Vue 监听键盘,键盘修饰符keyup

    附录:键盘Key Code对照表 代码: <!doctype html> <html lang="en"> <head> <meta ch ...

  7. vue 学习三 v-model 表单绑定输入 以及修饰符的用处

    v-model 指定使用过vue的同学都应该是很熟悉的了,这里就不多介绍,本章主要就是记录一些v-model非常实用的修饰符和对于v-model在html文本框,多行文本框,选择框,单选框,复选框上对 ...

  8. Vue中监听 键盘事件及修饰符

    键盘事件: keyCode 实际值 48到57     0 - 9 65到90           a - z ( A-Z ) 112到135       F1 - F24 8            ...

  9. vue - @click 用到的修饰符

    1.vue提供的方法 .stop .prevent .capture .self .once .passive <!-- 阻止单击事件继续传播 --><a v-on:click.st ...

随机推荐

  1. LVGL库入门教程04-样式

    LVGL样式 LVGL样式概述 创建样式 在 LVGL 中,样式都是以对象的方式存在,一个对象可以描述一种样式.每个控件都可以独立添加样式,创建的样式之间互不影响. 可以使用 lv_style_t 类 ...

  2. 实现领域驱动设计 - 使用ABP框架 - 解决方案概览

    .NET解决方案的分层 下图显示了使用ABP的 应用启动模板 创建的Visual Studio解决方案: 解决方案名称为问题跟踪,它由多个项目组成.通过考虑DDD原则以及开发和部署实践,该解决方案是分 ...

  3. 分享|智慧环保-生态文明信息化解决方案(附PDF)

    内容摘要: 生态文明建设被提到前所未有的战略高度,我们既要绿水青山,也要金山银山.宁要绿水青山,不要金山银山,而且绿水青山就是金山银山.要正确处理好经济发展同生态环境保护的关系,牢固树立保护生态环境就 ...

  4. 【Java面试】简单说一下你对序列化和反序列化的理解

    Hi,大家好,我是Mic 一个工作4年的粉丝,投了很多简历 好不容易接到一个互联网公司的面试邀约. 在面试第一轮就被干掉了,原因是对主流互联网技术理解太浅了. 其中就有一个这样的问题:"简单 ...

  5. Java学习第二周

    这一周观看了黑马程序员毕向东的教学视频学习了数组的创建:数组元素的使用及遍历,类的声明,成员方法的声明,构造器的声明 数据类型[] 数组名 = new 数据类型[长度];数据类型[] 数组名 = {数 ...

  6. 没有编辑器时,使用echo更换源

    echo "\ deb http://mirrors.aliyun.com/ubuntu/ xenial main deb-src http://mirrors.aliyun.com/ubu ...

  7. linux 配置集群需要修改的东西

    1. 服务器主机名 vi /etc/hostname 按Esc,然后:wq! ,保存,然后重启电脑 reboot 2.修改IP和mac,也可以设置成自动的,但一般是固定的 cd /etc/syscon ...

  8. 006面试题__创建String对象

    常见面试题: String s = new String("hello"); 问:创建了几个对象? 答:2个 1. 创建了一个字符常量池,指向了"hello"字 ...

  9. 深入剖析(JDK)ArrayQueue源码

    深入剖析(JDK)ArrayQueue源码 前言 在本篇文章当中主要给大家介绍一个比较简单的JDK为我们提供的容器ArrayQueue,这个容器主要是用数组实现的一个单向队列,整体的结构相对其他容器来 ...

  10. Codeforces 缺省源

    #include <cstdio> #include <algorithm> #include <vector> using namespace std; type ...