1.模板语法

  1.1.文本插值,数据绑定。{{}},如:

 <p>{{ message }}</p>

  1.2.输出HTML代码。v-html,如:

 <div v-html="message"></div>

  1.3.HTML属性值绑定。 v-bind,如:

<div id="app">
<pre><a v-bind:href="url">菜鸟教程</a></pre>
</div> <script>
new Vue({
el: '#app',
data: {
url: 'http://www.runoob.com'
}
})
</script>

  缩写:

<!-- 完整语法 -->
<a v-bind:href="url"></a>
<!-- 缩写 -->
<a :href="url"></a>

  1.4.判断指令。v-if,如:

<div id="app">
<p v-if="seen">现在你看到我了</p>
</div> <script>
new Vue({
el: '#app',
data: {
seen: true
}
})
</script>

  1.5.监听DOM事件。 v-on,如:

<!-- 完整语法 -->
<a v-on:click="doSomething"></a>
<!-- 缩写 -->
<a @click="doSomething"></a>

  1.6.双向数据绑定。v-model,用来在 input、select、textarea、checkbox、radio 等表单控件元素上创建双向数据绑定,根据表单上的值,自动更新绑定的元素的值。如:

<div id="app">
<p>{{ message }}</p>
<input v-model="message">
</div> <script>
new Vue({
el: '#app',
data: {
message: 'Runoob!'
}
})
</script>

  1.7.if else指令:v-if, v-else; else if指令:v-if, v-else-if, v-else;

  1.8.使用 v-show 指令来根据条件展示元素。如:

<h1 v-show="ok">Hello!</h1>

  1.9.循环使用 v-for 指令。可以用来迭代数组,对象,整数如:

<div id="app">
<ol>
<li v-for="site in sites">
{{ site.name }}
</li>
</ol>
</div> <script>
new Vue({
el: '#app',
data: {
sites: [
{ name: 'Runoob' },
{ name: 'Google' },
{ name: 'Taobao' }
]
}
})
</script>

  1.10.计算属性。computed,如:

<div id="app">
<p>原始字符串: {{ message }}</p>
<p>计算后反转字符串: {{ reversedMessage }}</p>
</div> <script>
var vm = new Vue({
el: '#app',
data: {
message: 'Runoob!'
},
computed: {
// 计算属性的 getter
reversedMessage: function () {
// `this` 指向 vm 实例
return this.message.split('').reverse().join('')
}
}
})
</script>

computed与methods的区别:我们可以使用 methods 来替代 computed,效果上两个都是一样的,但是 computed 是基于它的依赖缓存,只有相关依赖发生改变时才会重新取值。而使用 methods ,在重新渲染的时候,函数总会重新调用执行。

computed setter:computed 属性默认只有 getter ,不过在需要时你也可以提供一个 setter :

var vm = new Vue({
el: '#app',
data: {
name: 'Google',
url: 'http://www.google.com'
},
computed: {
site: {
// getter
get: function () {
return this.name + ' ' + this.url
},
// setter
set: function (newValue) {
var names = newValue.split(' ')
this.name = names[0]
this.url = names[names.length - 1]
}
}
}
})
// 调用 setter, vm.name 和 vm.url 也会被对应更新
vm.site = '菜鸟教程 http://www.runoob.com';

  1.11.v-bind:class= 与 v-bind:style=  https://www.runoob.com/vue2/vue-class-style.html

2.修饰符

  2.1.指明的特殊后缀,用于指出一个指令应该以特殊方式绑定。. (半角句号)。如:

<!--event.preventDefault() 阻止元素发生默认的行为(例如,当点击提交按钮时阻止对表单的提交)。-->
<form v-on:submit.prevent="onSubmit"></form>

  2.2.事件修饰符。

Vue.js 为 v-on 提供了事件修饰符来处理 DOM 事件细节,如:event.preventDefault() 或 event.stopPropagation()。Vue.js通过由点(.)表示的指令后缀来调用修饰符。如:.stop/.prevent/.capture/.self/.once

<!-- 阻止单击事件冒泡 -->
<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>

  2.3.按键修饰符。

Vue 允许为 v-on 在监听键盘事件时添加按键修饰符:

<!-- 只有在 keyCode 是 13 时调用 vm.submit() -->
<input v-on:keyup.13="submit">

Vue 为最常用的按键提供了别名:

<!-- 同上 -->
<input v-on:keyup.enter="submit">
<!-- 缩写语法 -->
<input @keyup.enter="submit">

.enter/.tab/.delete(捕获 "删除" 和 "退格" 键)/.esc/.up/.down/.left/.right/.ctrl/.alt/.shift/.meta

3.过滤器

  3.1.过滤器函数接受表达式的值作为第一个参数。

以下实例对输入的字符串第一个字母转为大写:

<div id="app">
{{ message | capitalize }}
</div> <script>
new Vue({
el: '#app',
data: {
message: 'runoob'
},
filters: {
capitalize: function (value) {
if (!value) return ''
value = value.toString()
return value.charAt(0).toUpperCase() + value.slice(1)
}
}
})
</script>

 4.监听属性。

  4.1.Vue.js 监听属性 watch,我们可以通过 watch 来响应数据的变化。如:

<div id = "app">
<p style = "font-size:25px;">计数器: {{ counter }}</p>
<button @click = "counter++" style = "font-size:25px;">点我</button>
</div>
<script type = "text/javascript">
var vm = new Vue({
el: '#app',
data: {
counter: 1
}
});
vm.$watch('counter', function(newval, oldval) {
alert('计数器值的变化 :' + oldval + ' 变为 ' + newval + '!');
});
</script>
Vue实例还暴露了一些有用的实例属性与方法。它们都有前缀 $,监听数值counter,如果发生改变则弹出提示框。

vue学习过程总结(03) - 菜鸟教程归纳的更多相关文章

  1. vue学习过程总结(04) - 菜鸟教程归纳

    1.组件 组件(component)是vue.js最强大的功能之一.组件可以扩展html元素,封装可重用的代码.组件系统让我们可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的界面都可以抽象 ...

  2. 菜鸟教程 Python100例 之实例29

    学习编程的路,走得好艰辛... 为了巩固基础知识,把菜鸟教程网上的实例拿来练习.. 在做到实例29时,看了网站给出的代码,觉得可以加强一下功能,不由得动了一下脑筋,如下: 原文题目: 题目:给一个不多 ...

  3. 【转载】jQuery Validate 菜鸟教程

    文章1:http://www.runoob.com/jquery/jquery-plugin-validate.html          (jQuery Validate 菜鸟教程)

  4. Http状态码大全(来自菜鸟教程)

    HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准. HTTP是一个基于TCP/IP通信 ...

  5. windows下vue.js开发环境搭建教程

    这篇文章主要为大家详细介绍了windows下vue.js开发环境搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 最近,vue.js越来越火.在这样的大浪潮下,我也开始进入vue的学习行列中 ...

  6. 菜鸟教程之学习Shell script笔记(下)

    菜鸟教程Shell script学习笔记(下) 以下内容是学习菜鸟教程之shell教程,所整理的笔记 菜鸟教程之shell教程:http://www.runoob.com/linux/linux-sh ...

  7. 菜鸟教程之学习Shell script笔记(中)

    菜鸟教程Shell script学习笔记(中) 以下内容是学习菜鸟教程之shell教程,所整理的笔记 菜鸟教程之shell教程:http://www.runoob.com/linux/linux-sh ...

  8. 菜鸟教程之学习Shell script笔记(上)

    菜鸟教程之学习Shell script笔记 以下内容是,学习菜鸟shell教程整理的笔记 菜鸟教程之shell教程:http://www.runoob.com/linux/linux-shell.ht ...

  9. C语言经典例题(菜鸟教程100例)

    学习c语言基础,怎么能少了菜鸟教程上的100道例题呢,这里整理一下每道题的链接,希望大家能享受学习的乐趣 1,有1,2,3,4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 2,企业发放 ...

随机推荐

  1. termux vim 配置 自动补全 遇到的问题

    // 自动不全需要安装 pkg install proot -y // 用proot可以为手机没有root的用户来模拟一个root的环境,这里主要是经典的 Linux 文件系统布局上的模拟. //执行 ...

  2. 04.python语法入门--基本数据类型

    # python是一门解释型的.强类型的.动态语言​​# 一:数字类型# 1.1 整型int:记录人的年龄.等级.号码.个数# age = 18# print(type(age))​# 1.2 浮点数 ...

  3. 日行一算(Vowel-大小写转换)

    题目 题目描述 solo从小就对英文字母非常感兴趣,尤其是元音字母(a,e,i,o,u,A,E,I,O,U),他在写日记的时候都会把元音字母写成大写的,辅音字母则都写成小写,虽然别人看起来很别扭,但是 ...

  4. curl的HTTP参数速查表

    curl简介 curl是一个开源的命令行工具,它基于网络协议,对指定URL进行网络传输,得到数据后不任何具体处理(如:html的渲染等),直接显示在"标准输出"(stdout)上. ...

  5. 思迈特软件Smartbi:Excel数据分析常用函数汇总!

    多传统行业的数据分析师只要求掌握Excel即可,会SPSS/SAS是加分项.即使在挖掘满街走,Python不如狗的互联网数据分析界,Excel也是不可替代的. Excel是我们工作中经常使用的一种工具 ...

  6. 【硬件基础知识】指令集框架(ISA:Instruction Set Architecture)

    指令框架(ISA:Instruction Set Architecture) 定义 指令集架构(英语:Instruction Set Architecture,缩写为ISA),又称指令集或指令集体系, ...

  7. 聊聊你对AQS的理解

    场景引入 面试官上来就一句,谈谈你对AQS的理解,大家心里可能收到了1W点伤害,AQS是什么,可能连全称都不知道,所以下面让我们聊聊AQS. 以ReentrantLock来介绍一下AQS 在java中 ...

  8. linux – 使用find -name命令的通配符和双引号

    转至:https://www.icode9.com/content-3-209958.html 双引号(和单引号)是否抑制了通配符扩展?如果是这样,那么为什么以下呢? find -name " ...

  9. Oracle数据库巡检

    转至:https://blog.51cto.com/sf1314/2123068 select inst_id,status,count(*) from gv$session group by ins ...

  10. 使用Xshell连接VMware上的Linux虚拟机

    转至:https://www.cnblogs.com/yenengfeng/p/13684265.html 虚拟机自己安装好,这边直接说步骤.有借鉴这篇文章 https://www.cnblogs.c ...