Vue 中提供了 v-on: 事件绑定机制

绑定的事件处理函数必须定义到vm实例的事件处理函数 methods 中去

<div id="app">
<!-- <input type="button" value="点我,魅力可大了呢" id="btn"/> -->
<input type="button" value="点我,魅力可大了呢" v-on:click="add"/>
<!-- <input type="button" value="点我,魅力可大了呢" v-on:mouseover="btn"/> -->
<hr>
<h3>今日的魅力值----{{glamour}}</h3>
</div>
<script src="./vue2.6.10.min.js"></script>
<script>
var vm = new Vue({
el: '#app',
data: {
glamour:'1'
},
methods: { // 这个 methods属性中定义了当前Vue实例所有可用的方法
add: function () {
// alert('Hello')
console.log('ok')
}
}
})
</script>



es6 中函数的简写形式:

 methods: {
// add: function () {
// // alert('Hello')
// console.log('ok')
// } // es6中函数的简写形式:
add(){
console.log('yes')
}
}



如果在 绑定的add 方法中加入小括号()页面也能正常执行

<input type="button" value="点我,魅力可大了呢" v-on:click="add()"/>
methods: {
add(num1,num2,num3){
console.log('hello'+num1+num2+num3)
}
}

既然都能执行,那加入小括号与不加小括号的区别在于:

加入小括号就能传递参数了呀,是不是傻

<input type="button" value="点我,魅力可大了呢" v-on:click="add(1,2,3)"/>

来吧展示:



函数中可以使用...的方式去接收数组形式的参数

methods: {
// es6中函数的简写形式:
// add(num1,num2,num3){
// console.log('hello'+num1+num2+num3)
// }
add(...args){
console.log(args)
}
}



在vm实例中,如果想要访问data中的值,如果直接通过变量的方式是获取不到的,只能通过this访问,this就代表vm实例

栗子:

methods: {
// add(...args){
// console.log(args)
// }
add(){
console.log(msg)
}
}

通过this.xxx去获取

 add(){
console.log(this.msg)
}

思考:如果this是vm实例的话,想要获取data上的属性中的数据,方式不应该是this.data.msg?,

测试:

解释:

能够直接通过this.xxx的方式去获取data属性上的数据的原因是,

vue做了一层处理,你挂载到data上的这些属性,默认处理了直接挂载到vm的身上

点击按钮,让魅力值增加

<body>

  <div id="app">
<input type="button" value="点我,魅力可大了呢" v-on:click="add()"/>
<hr>
<h3>今日的魅力值----{{msg}}</h3>
</div>
<script src="./vue2.6.10.min.js"></script>
<script>
var vm = new Vue({
el: '#app',
data: {
msg:1
},
methods: {
add(){
this.msg+=1
console.log(this.msg)
}
}
})
</script>
</body>

v-on的简写: 将 v-on: 替换成 @ 符号

比如:

 <input type="button" value="点我,魅力可大了呢" v-on:click="add()"/>
<input type="button" value="点我,魅力可大了呢" v-on:mouseover="add()"/>
 <input type="button" value="点我,魅力可大了呢" @click="add()"/>
<input type="button" value="点我,魅力可大了呢" @mouseover="add()"/>

vue学习笔记(一)---- vue指令( v-on 事件绑定 )的更多相关文章

  1. 【Vue学习笔记】—— vue的基础语法 { }

    学习笔记 作者:oMing vue v-on: 简称 @ <div id='app'> <button v-on:click='Show1'> </button> ...

  2. vue学习笔记(二)vue的生命周期和钩子函数

    前言 通过上一章的学习,我们已经初步的了解了vue到底是什么东西,可以干什么,而这一篇博客主要介绍vue的生命周期和它常用的钩子函数,如果有学过java的园友可能有接触到在学习servlet的时候学过 ...

  3. vue学习笔记:vue的认识与特点与获取

    Vue了解 Vue:读作 view Vue是一个渐进式框架 与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计. Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整 ...

  4. vuejs学习笔记(1)--属性,事件绑定,ajax

    属性 v-for 类似于angular中的 ng-repeat ,用于重复生成html片段: <ul id="box"> <li v-for="(v, ...

  5. vuejs学习笔记(2)--属性,事件绑定,ajax

    属性 v-for 类似于angular中的 ng-repeat ,用于重复生成html片段: <ul id="box"> <li v-for="(v, ...

  6. Vue学习笔记之Vue指令系统介绍

    所谓指令系统,大家可以联想咱们的cmd命令行工具,只要我输入一条正确的指令,系统就开始干活了. 在vue中,指令系统,设置一些命令之后,来操作我们的数据属性,并展示到我们的DOM上. OK,接下来我们 ...

  7. vue学习笔记—bootstrap+vue用户管理

    vue,读音view,简单易用的前端框架.特点如下: 1.一个mvvm的前端框架,内部做好了html中dom对象和后台用js语言定义的变量的双向绑定 2.中国人尤雨溪维护的个人项目,中文资料多,和go ...

  8. VUE学习笔记之vue cli 构建项目

    一.环境搭建: 1.安装node.js 从node.js官网下载并安装node,安装过程很简单,一路"下一步"就可以了.安装完成之后,打开命令行工具(win+r,然后输入cmd), ...

  9. Vue学习笔记之Vue知识点补充

    0x00 修饰符 .lazy 在默认情况下,v-model 在每次 input 事件触发后将输入框的值与数据进行同步 .你可以添加 lazy 修饰符,从而转变为使用 change 事件进行同步: &l ...

  10. Vue学习笔记之Vue学习前的准备工作

    0x00 起步 1.扎实的HTML/CSS/Javascript基本功,这是前置条件. 2.不要用任何的构建项目工具,只用最简单的<script>,把教程里的例子模仿一遍,理解用法.不推荐 ...

随机推荐

  1. shardingsphere-jdbc 水平分表学习记录

    放在自己博客里搬过来一份~ 前司使用的是自己魔改的TDDL,在家时间比较多就尝试学一些业内比较常用的中间件. 这里记录一下学习中遇到的一些问题. 环境 设置的比较简单(太懒了就测试了几个表), 两个分 ...

  2. 怎么实现无痛刷新token

    最近遇到这个需求,前端登录后,后端返回  access_token 和 refresh_token ,当token 过期时用旧的 refresh_token 去获取新的token,前端要不痛去刷新to ...

  3. Atlas人工智能基础知识

    目录 一.  AI基本概念 1.人工智能是什么 2.人工智能.机器学习.深度学习的关系是什么 2.监督学习.无监督学习.半监督学习和强化学习是什么 3.什么是模型和网络 4.什么是训练和推理 5.什么 ...

  4. django启动报错:DisallowedHost at /

    学习django第一天,第一次启动服务就报错,报错内容如下: DisallowedHost at / Invalid HTTP_HOST header: '192.168.116.22:8000'. ...

  5. vue项目中,alert使用

    methods:{ sendData() { ··· // 中间省略的代码 alert(`发送成功,连接失败的号码有:${failList}`) // failList里存的是后台返回的数据 } }

  6. SSH SCP 使用秘钥验证 登录

    从Win10连接到Ubuntu 22.04. 1. Win10 上生成秘钥公钥 ssh-keygen -t rsa -C "xxx@yyy.com" 2. Ubuntu 22.04 ...

  7. Axios +Vue + themeleay

    1.pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId& ...

  8. [信息抽取]基于ERNIE3.0的多对多信息抽取算法:属性关系抽取

    [信息抽取]基于ERNIE3.0的多对多信息抽取算法:属性关系抽取 实体关系,实体属性抽取是信息抽取的关键任务:实体关系抽取是指从一段文本中抽取关系三元组,实体属性抽取是指从一段文本中抽取属性三元组: ...

  9. 【SQL进阶】【REPLACE/TIMESTAMPDIFF/TRUNCATE】Day01:增删改操作

    一.插入记录 1.插入多条记录 自己的答案: INSERT INTO exam_record(uid, exam_id, start_time, submit_time, score) VALUES ...

  10. 【每日一题】【链表or双指针循环条件】2022年2月26日-NC96 判断一个链表是否为回文结构

    描述给定一个链表,请判断该链表是否为回文结构.回文是指该字符串正序逆序完全一致. 思路: public boolean isPail (ListNode head) { ListNode node = ...