vue2.0---模板语法
***插值
#文本
数据绑定最常见的形式就是双大括号的形式:
<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>'
}
});
效果:

#属性:
<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---模板语法的更多相关文章
- 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 ...
- Vue2.0 新手完全填坑攻略——从环境搭建到发布
Jinkey原创感谢 showonne.yubang 技术指导Demo 地址:http://demo.jinkey.io/vue2源码:https://github.com/Jinkeycode/vu ...
- Vue2.0项目
什么是 Vue Vue 是一个前端框架,特点是 数据绑定 比如你改变一个输入框 Input 标签的值,会 自动同步 更新到页面上其他绑定该输入框的组件的值  组件化 页面上小到一个按钮都可以是一个单 ...
- vue2.0+element+node+webpack搭建的一个简单的后台管理界面
闲聊: 今天是六一儿童节哟,小颖祝大家节日快乐哈哈哈.其实这个demo小颖断断续续做了将近两个礼拜了,心塞的,其实这个也没有多难,主要是小颖有点最近事情有点多,所以就把这个一直拖着,今天好不容易做好了 ...
- Vue2.0组件实现动态搜索引擎(一)
原文链接:https://blog.csdn.net/qwezxc24680/article/details/74550556 从github上看到一个不错的开源项目:https://github.c ...
- Vue2.0 新手入门 — 从环境搭建到发布
什么是 Vue Vue 是一个前端框架,特点是数据绑定 比如你改变一个输入框 Input 标签的值,会自动同步更新到页面上其他绑定该输入框的组件的值 组件化 页面上小到一个按钮都可以是一个单独的文件. ...
- 前端MVC Vue2学习总结(三)——模板语法、过滤器、计算属性、观察者、Class 与 Style 绑定
Vue.js 使用了基于 HTML 的模版语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循规范的浏览器和 HTML 解 ...
- Vue2.0 【第一季】第3节 v-for指令:解决模板循环问题
目录 Vue2.0 [第一季] 第3节 v-for指令:解决模板循环问题 第三节 v-for 指令 一.基本用法: 二.排序 三.对象循环输出 Vue2.0 [第一季] 第3节 v-for指令:解决模 ...
- Vue2.0的变化 ,组件模板,生命周期,循环,自定义键盘指令,过滤器
组件模板: 之前: <template> <h3>我是组件</h3><strong>我是加粗标签</strong> </templat ...
- Django 2.0 学习(12):Django 模板语法
Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }} 在Django模板中遍历复杂数据结构的关键是句点字 ...
随机推荐
- Splash页面跳转主页面,去掉主页面标题栏
requestWindowFeature(Window.FEATURE_NO_TITLE); // 去除标题,必须在setContentView之前调用
- 从0到1打造直播 App
转自http://dev.qq.com/topic/5811d42e7fd6ec467453bf58 概要 分享内容: 互联网内容载体变迁历程,文字——图片/声音——视频——VR/AR——……..从直 ...
- Javassist 通用工具之 CodeInjector
Javassist 通用工具之CodeInjector 最近在做一个APM项目,要在运行时代码修改.目前常用修改的几种工具有:ASM.BCEL.Javassist.经过对比,项目中采用了Javassi ...
- protobuf的编译安装
github地址:https://github.com/google/protobuf支持多种语言,有多个语言的版本,本文采用的是在centos7下编译源码进行安装. github上有详细的安装说明: ...
- 项目实现不同环境不同配置文件-maven profile
最近接触的项目都是在很多地方都落地的项目,需要支持不同的环境使用不同的配置文件.一直以来都以为是人工的去写不同的配置文件,手动的去修改运用的配置文件.感觉自己还是太low呀.maven的使用的还停留在 ...
- 学习《Hardware-Efficient Bilateral Filtering for Stereo Matching》一文笔记。
个人收藏了很多香港大学.香港科技大学以及香港中文大学里专门搞图像研究一些博士的个人网站,一般会不定期的浏览他们的作品,最近在看杨庆雄的网点时,发现他又写了一篇双边滤波的文章,并且配有源代码,于是下载下 ...
- SCNU 2015ACM新生赛初赛【1001~1011】个人解题思路
题目1001: 大意:已知$n$个角色,$m$种怪物种族,$k$个怪物,给出一组角色编号,编号$P_{i}$的角色能肝死编号$i$的怪物,对于给定的一组怪物编号,为了打通关 ...
- 初入网络系列笔记(5)FTP协议
一.借鉴说明,本博文借鉴以下博文 1.锤子,FTP协议,http://www.cnblogs.com/loadrunner/archive/2008/01/09/1032264.html 2.suna ...
- Resources.Load加载文件返回null的原因
1.文件夹都要放在Resources目录下 2.加载时photoName不需要扩展名 Texture2D t = Resources.Load<Texture2D>("Loadi ...
- Statement对象的executeUpdate返回信息
int num = sta.executeUpdate(String sql);返回的是我们平时操作数据库客户端时控制台显示的影响行数