***插值

#文本  

    数据绑定最常见的形式就是双大括号的形式:

        <div id="app">{{message}}</div>

    只要绑定的属性message上的值发生变化,插值出的内容都会发生变化

        var app = new Vue({
el:"#app",
data:{
message:'hello Ling!'
}
}) #纯HTML 双大括号会将数据解释为纯文本,而不是HTML 。为了输出真正的 HTML ,就需要使用到 v-html 指令: <div id=‘app-2’ v-html="Myhtml"></div>
var vm = new Vue({
el:'#app-2',
data:{
rawHtml:'<p>这是一个P标签!</p>'
}
}); 效果:
![](http://images2015.cnblogs.com/blog/1023621/201612/1023621-20161228113215023-460227816.png) #属性: <button v-bind:id="btn_id" v-bind:disabled="check">点击我</button> 如果check的值是false,则disabled属性将不会被渲染。以v-开头的是Vue.js的指令,你马上就能看到如何使用它们。

***表达式

   可以在指令及{{}}中使用表达式,事实上,常量或变量的名称就是最简单的表达式。Vue可以通过是否带引号来判断一个表达式是一个变量还是一个常量字符串。所以在以后的内容里,指令及{{}}中的内容会被成为表达式

   {{message}}
{{number + 1}}
{{ok ? 'yes' : 'no'}}
{{ message.split('').reverse().join('') }}
<div v-bind:id="'list-' + id"></div> 这些表达式都被支持,但是{{}}和指令中只支持一个表达式,不支持语句。

***过滤器

 {{message | capitalize}}======》Vue.js的内置过滤器,作用是似的message中的值首字母大写。
另外,你也可以自定义过滤器:
new Vue({
//......
filters:{
ling:function(value){
return 'ling is a pretty girl!I want to say:' + value
}
}
})
过滤器可以串联,也可以接受参数。在接受参数时,第一个参数默认是前面返回的字符串,第二个参数开始是用户传递的参数,注意如果参数是字符串要加引号。如:
{{message | filterA | filterB('string', somevar)}}

***指令

    指令(Directives)是带有 v- 前缀的特殊属性。
1:循环v-for: <div id="app-3">
<ol>
<li v-for="todo in todos">
{{todo.text}}
</li>
</ol>
</div>
<script>部分:
var app3 = new Vue({
el:'#app-3',
data:{todos:[
{text:'ling Yan'},
{text:'zhang San'},
{text:'li Si'}
]
}
});
浏览器显示为:

    2:v-on:
<div id="app-4">
<p>{{message}}</p>
<button v-on:click="reverseMessage">Reverse Message</button>
<button v-on:click="sliceMessage">sliceMessage</button>
</div>
<script>部分:
var app4 = new Vue({
el:'#app-4',
data:{
message:'Hello Ling Yan!'
},
methods:{
reverseMessage:function(){
this.message = this.message.split('').reverse().join('')
},
sliceMessage:function(){
this.message = this.message.slice(6);
}
}
});
浏览器显示为:

    3:on-bind:
<div id="app-2">
<span v-bind:title="message">
鼠标滑过几秒钟!
</span>
</div>
<script>部分:
var app2 = new Vue({
el:'#app-2',
data:{
message:'你在'+new Date()+'加载此页面'
}
})
浏览器系显示效果:

v-on用于指定事件,而v-bind用于绑定属性,由于它们非常常见,所以Vue.js为它们提供看缩写的形式:
<button :id="idname" @click="say"></button>
say为事件的触发函数,写在methods属性中。

vue2.0---模板语法的更多相关文章

  1. Vue2.0环境搭建和测试demo

    Vue2.0 推荐开发环境 Homebrew 1.0.6(Mac).Node.js 6.7.0.npm 3.10.3.webpack 1.13.2.vue-cli 2.4.0.Atom 1.10.2 ...

  2. Vue2.0 新手完全填坑攻略——从环境搭建到发布

    Jinkey原创感谢 showonne.yubang 技术指导Demo 地址:http://demo.jinkey.io/vue2源码:https://github.com/Jinkeycode/vu ...

  3. Vue2.0项目

    什么是 Vue Vue 是一个前端框架,特点是 数据绑定 比如你改变一个输入框 Input 标签的值,会 自动同步 更新到页面上其他绑定该输入框的组件的值  组件化 页面上小到一个按钮都可以是一个单 ...

  4. vue2.0+element+node+webpack搭建的一个简单的后台管理界面

    闲聊: 今天是六一儿童节哟,小颖祝大家节日快乐哈哈哈.其实这个demo小颖断断续续做了将近两个礼拜了,心塞的,其实这个也没有多难,主要是小颖有点最近事情有点多,所以就把这个一直拖着,今天好不容易做好了 ...

  5. Vue2.0组件实现动态搜索引擎(一)

    原文链接:https://blog.csdn.net/qwezxc24680/article/details/74550556 从github上看到一个不错的开源项目:https://github.c ...

  6. Vue2.0 新手入门 — 从环境搭建到发布

    什么是 Vue Vue 是一个前端框架,特点是数据绑定 比如你改变一个输入框 Input 标签的值,会自动同步更新到页面上其他绑定该输入框的组件的值 组件化 页面上小到一个按钮都可以是一个单独的文件. ...

  7. 前端MVC Vue2学习总结(三)——模板语法、过滤器、计算属性、观察者、Class 与 Style 绑定

    Vue.js 使用了基于 HTML 的模版语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循规范的浏览器和 HTML 解 ...

  8. Vue2.0 【第一季】第3节 v-for指令:解决模板循环问题

    目录 Vue2.0 [第一季] 第3节 v-for指令:解决模板循环问题 第三节 v-for 指令 一.基本用法: 二.排序 三.对象循环输出 Vue2.0 [第一季] 第3节 v-for指令:解决模 ...

  9. Vue2.0的变化 ,组件模板,生命周期,循环,自定义键盘指令,过滤器

    组件模板: 之前: <template> <h3>我是组件</h3><strong>我是加粗标签</strong> </templat ...

  10. Django 2.0 学习(12):Django 模板语法

    Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }} 在Django模板中遍历复杂数据结构的关键是句点字 ...

随机推荐

  1. UI-初识君面之理论篇

    一个好的app不光要用好的功能,还要有好的界面,这样内外兼修才算得上是一个好的App.其实跟人一样,不能只刷帅,要有内涵(看清楚哦,内涵不是指闷骚).不知不觉在园子里已经晃了八年,来深也八年了,.NE ...

  2. 改变Activity启动时的默认动画

    why 在开发中我们可能需要改变这一行为,一般基于2种理由: 产品的spec这么要求的: 想自己控制这个行为,因为在Android设备上可能每个的这一默认行为都不一样,厂商可以很容易修改它,从而导致a ...

  3. x01.BSheepTree: 树

    数据结构,无外乎三: 1. 一对一,线性表,数组是也: 2. 一对多,树,菜单是也: 3. 多对多,图,网络是也. 涉及到树,有一个平衡的问题,左旋转,右旋转,转得人晕晕乎乎.好在陈广的<数据结 ...

  4. 取消chrome浏览器下input和textarea的默认样式;html5默认input内容清除“×”按钮去除办法

    取消chrome浏览器下input和textarea的默认样式: outline:none;/*清空chrome中input的外边框*/ html5默认input内容清除“×”按钮去除办法: inpu ...

  5. EL表达式

    跳转传到: : 相当于(接值放值): --------------------------- --------------------------------- ------------------- ...

  6. 前端之JavaScript基础

    前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...

  7. jpa+springdata

    学习爱酷学习网尚硅谷springdata笔记: 1.在 Spring 配置文件 <?xml version="1.0" encoding="UTF-8"? ...

  8. 第一个C语言的小项目

    这里先写下主要的业务代码,一些库代码稍后补充上 /** * Feed新闻个性化推送 */ #include "push_service_news.h" /** * 保证单进程运行 ...

  9. [LeetCode] Ugly Number II 丑陋数之二

    Write a program to find the n-th ugly number. Ugly numbers are positive numbers whose prime factors ...

  10. IT培训行业揭秘(四)

    IT培训班的老师前面已经说过,很多都是从一线程序员岗位转过来的,因为培训行业的收入整体上来看还是比作普通程序员要高一些,这是市场的普遍行情.还有一部分老师从培训班学习过并且留到培训班任教的.一般这种老 ...