v-bind:绑定属性值,内容相当于js,缩写:

我添加了一个input标签,如下

<input type="button" value="按钮" title="title"></input>

这样显示的title是固定的,我想使用Vue的data里面的值,就需要加v-bind指令

<input type="button" value="按钮" v-bind:title="title + '---' +'相当于js'"></input>

Vue的data加一个title

 title:"这是一个v-bind指令的提示"

可以很清楚的看到,v-bind指令使用了之后,内容相当于js,title就是变量名,拼接的话就用+,内容用'',看一下浏览器展示效果

v-bind的缩写是:,可以写成如下

<input type="button" value="按钮" :title="title + '---' +'相当于js'"></input>

v-on:绑定方法,缩写@

我在Vue的笔记一中说过,Vue是不操作DOM的,这个v-on指令可以很好的解释这个

比如,上面的input的button按钮,我想写个点击事件,如果是原生js或者jquery,我们会这样写

 <input id="btn" type="button" value="按钮1" v-bind:title="title + '---' +'相当于js'"></input>

v-on的缩写是@,可以写成如下

 <input id="btn" type="button" value="按钮1" @title="title + '---' +'相当于js'"></input>

js会这样写

  document.getElementById('btn').onclick=function(){
alert('hello 许嵩');
}

这样不好,Vue就是不让我们操作DOM的,就是让我们专注于业务的,所以看看v-on的写法吧,下面是完整的HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title> <style>
[v-cloak]{
display: none
}
</style> </head>
<body> <!-- 这个div就是MVVM中的V,View -->
<div id="app"> <!-- v-cloak方式 -->
<p v-cloak>哈哈 {{ msg }} 许嵩来了</p> <!-- v-text方式 -->
<p v-text="msg">许嵩说菜糊了不来了</p> <!-- v-html方式 -->
<p v-html="msg2"></p> <!-- v-bind方式 -->
<input type="button" value="按钮" v-bind:title="title + '---' +'相当于js'"></input> <!-- 普通的js方式 -->
<input id="btn" type="button" value="按钮1" v-bind:title="title + '---' +'相当于js'"></input> <!-- v-on方式 -->
<input type="button" value="按钮2" v-bind:title="title + '---' +'相当于js'" v-on:click="show"></input> </div> <script type="text/javascript" src="../lib/vue-2.6.10.js"></script> <script>
// 这个vm就是MVVM中的VM,ViewModel
var vm=new Vue({
el: '#app',
// 这个data就是MVVM中的M,Model
data: {
msg: '许嵩',
msg2:"<h1>大家好,我是Vae</h1>",
title:"这是一个v-bind指令的提示"
},
methods: {
show:function(){
alert('hello 许嵩')
}
} }) document.getElementById('btn').onclick=function(){
alert('hello 许嵩');
}
</script> </body>
</html>

可以看到v-on方式是v-on:click="show",这个show就是个方法名,所以Vue里写了个method方法,里面有一个show方法。

总结

又新学了两个指令,v-bind绑定属性,v-on绑定方法

防盗链接:本博客由蜀云泉发表

Vue学习笔记三:v-bind,v-on的使用的更多相关文章

  1. vue学习笔记(三)class和style绑定

    前言 通过上一章的学习vue学习笔记(二)vue的生命周期和钩子函数,我们已经更近一步的知道了关于vue的一些知识,本篇博客将进一步探讨vue其它方面的内容,vue中关于class和style绑定,关 ...

  2. vue学习笔记(三):vue-cli脚手架搭建

    一:安装vue-cli脚手架: 1:为了确保你的node版本在4.*以上,输入 node -v 查看本机node版本,低于4请更新. 2:输入:  npm install -g vue-cli     ...

  3. VUE 学习笔记 三 模板语法

    1.插值 a.文本 数据绑定最常见的形式就是使用“Mustache”语法 (双大括号) 的文本插值 <span>Message: {{ msg }}</span> v-once ...

  4. vue学习笔记三:常见的表单绑定

    <template> <div id="app"> <input type="checkbox" id="checked ...

  5. vue学习笔记(四)事件处理器

    前言 在上一章vue学习笔记(三)class和style绑定的内容中,我们学习了如何在vue中绑定class和style,介绍了常用的绑定方法,class的数组绑定和对象绑定以及style的数组绑定和 ...

  6. Vue学习笔记-Vue.js-2.X 学习(三)===>组件化高级

    (四) 组件化高级 1.插槽(slot)的基本使用 A:基本使用: <slot></slot> B:默认置:<slot><h1>中间可以放默认值< ...

  7. Vue学习笔记十三:Vue+Bootstrap+vue-resource从接口获取数据库数据

    目录 前言 SpringBoot提供后端接口 Entity类 JPA操作接口 配置文件 数据库表自动映射,添加数据 写提供数据的接口 跨域问题 前端修改 效果图 待续 前言 Vue学习笔记九的列表案例 ...

  8. Vue学习笔记-Vue.js-2.X 学习(四)===>脚手架Vue-CLI(基本工作和创建)

    (五) 脚手架Vue-CLI 一 Vue-CLI前提(nodejs和webpack) 二  Vue学习-nodejs按装配置,Node.js 就是运行在服务端的 JavaScript. 1. 去nod ...

  9. Vue学习笔记-Vue.js-2.X 学习(一)===>基本知识学习

    一  使用环境: windows 7 64位操作系统 二  IDE:VSCode/PyCharm 三  Vue.js官网: https://cn.vuejs.org/ 四  下载安装引用 方式1:直接 ...

随机推荐

  1. HDU 6152 - Friend-Graph

    Friend-Graph Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  2. 【错误笔记】MyBatis SQLException: 无效的列类型: 1111

    问题描述: org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #1 with J ...

  3. 查看Eclipse版本号及各个版本区别

    1. 找到eclipse安装目录 2. 进入readme文件夹,打开readme_eclipse.html 3. readme_eclipse.html呈现的第二行即数字版本号,如: Eclipse ...

  4. Surging微服务的注意事项

    做个记录 1.Service的方法必须是异步方法 这个是同事发现的,非异步方法Swagger会用不了 2.仓储层不能用接口 这个是自己做的,根据同事的例子,本来好好的,想着在仓储层给加个接口,然后用接 ...

  5. git简单提交操作

    一.本地仓库操作 1.打开git命令行,先'到需要提交的目录 2.输入git init,初始化本地仓库 3.输入git add <file> 命令添加提交文件 4.输入git status ...

  6. linux系统mysql-5.7 修改字符集

    起因:我在网上看修改mysql字符的文章时,都说配置/etc/mysql/my.cnf文件 然而我打开我上述的my.cnf文件时,发现里面的内容跟别人的不一样,我就觉得这个肯定不是正确的文件 经过我在 ...

  7. 使用shell快速建立上万个文件夹

    #!/bin/bash#!This is a shell script to finish the folders tasks.rm -rf /home/cpay/zyc/filemkdir /hom ...

  8. 在Bootstrap开发框架中使用Grid++报表

    之前在随笔<在Winform开发中使用Grid++报表>介绍了在Winform环境中使用Grid++报表控件,本篇随笔介绍在Bootstrap开发框架中使用Grid++报表,也就是Web环 ...

  9. .NET开源快速开发框架Colder发布 (NET452+AdminLTE版)

    .NET开源快速开发框架Colder(NET452+AdminLTE版) 引言 半年前将基于Easyui的快速开发框架开源,三个版本(NET4.52,NETCore和NET4.0)总共荣获200+星, ...

  10. IDEA导入项目jar包红线、依赖问题....

    一般遇到这种情况用以下两种方式解决....... 1.reimport包 2.清缓存重启 针对1方法: a.确实不缺包: 可以先注释掉pom文件中的jar包, 此时idea会提示import, 那就i ...