vue模板语法-插值详解


Posted in Javascript onMarch 06, 2017

1.文本

数据绑定最常见的形式就是使用‘Mustache'语法(双打括号)的文本插值:

<span>message:{{msg}}</span>

使用v-once指令,也能执行一次性的插值,当主句改变时,插值处的内容不会更新。

但请留心这回影响到该节点上所有的数据绑定:

<span v-once>this will nver change:{{message}}</span>

2.纯html

双打括号会将数据解释为纯文本,而非html。为了输出html可以使用v-html指令:

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

被插入的内容被当做HTML---数据绑定会被忽略。注意,你不能使用v-html来

复合局部模版,因为vue不是基于字符串的模版引擎。组件更适合单人UI重用与复合的基本单元。

站点上动态渲染的任意html可能会非常危险,因为它会很容易导致XSS攻击。

请只对可信内容使用html插值,绝不要对用户提供的内容插值。

3.属性

Mustache不能在html属性中使用,应使用v-bind指令;

<div v-bind:id="dynamicId"></div>

这对布尔值的属性也有效--如果条件被求值为flase的话该属性被移除

<button v-bind:disabled="someDynamicCondition">Button</button>

4.使用JavaScript表达式

迄今为止,在我们的模版中我们一直都值绑定简单的属性键值。但实际上,对于

所有的数据绑定,Vue.js都提供了完全的Javascript表达式支持

{{nunber+1}}
{{ok?'YES':'NO'}}
{{message.split('').reverse().join('')}}
<div v-bind:is="'list-'+id"></div>

这些表达式会在所属vue实例的数据作用域下作为哦JavaScript被解析。

每个限制就是,每个绑定都只能包含单个表达式,所以下面不会生效

//这句是语句不是表达式
{{var a = 1}}
//流控制也不会生效,请使用三元表达式
{{if(ok){return message}}}

模板表达式都被放在沙盒中,只能访问全局变量的一个白名单,如Math和Date。

不应该在模板表达式中试图访问用户自定义的全局变量

以上所述是小编给大家介绍的vue模板语法-插值详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JS自动适应的图片弹窗实例
Jun 29 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
Oct 21 Javascript
JavaScript实现当网页加载完成后执行指定函数的方法
Mar 21 Javascript
全面解析Bootstrap中tab(选项卡)的使用方法
Jun 06 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐二)
Jul 12 Javascript
js canvas仿支付宝芝麻信用分仪表盘
Nov 16 Javascript
Node.js编写CLI的实例详解
May 17 Javascript
利用node.js如何创建子进程详解
Dec 09 Javascript
使用Vuex解决Vue中的身份验证问题
Sep 28 Javascript
layui扩展上传组件模拟进度条的方法
Sep 23 Javascript
HTML+JavaScript实现扫雷小游戏
Sep 30 Javascript
AJAX检测用户名是否存在的方法
Mar 24 Javascript
js中的面向对象入门
Mar 06 #Javascript
jQuery插件FusionCharts实现的2D面积图效果示例【附demo源码下载】
Mar 06 #Javascript
Vue 2.x教程之基础API
Mar 06 #Javascript
jQuery实现获取h1-h6标题元素值的方法
Mar 06 #Javascript
一道面试题引发的对javascript类型转换的思考
Mar 06 #Javascript
JavaScript函数参数的传递方式详解
Mar 06 #Javascript
jQuery实现遍历复选框的方法示例
Mar 06 #Javascript
You might like
php实现12306余票查询、价格查询示例
2014/04/17 PHP
PHP生成及获取JSON文件的方法
2016/08/23 PHP
浅谈ThinkPHP中initialize和construct的区别
2017/04/01 PHP
由php中字符offset特征造成的绕过漏洞详解
2017/07/07 PHP
面向对象的javascript(笔记)
2009/10/06 Javascript
JavaScript的变量作用域深入理解
2009/10/25 Javascript
Javascript笔记一 js以及json基础使用说明
2010/05/22 Javascript
Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法
2010/12/06 Javascript
JavaScript检测弹出窗口是否已经关闭的方法
2015/03/24 Javascript
基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插件JSTree的使用
2016/05/12 Javascript
JS中的进制转换以及作用
2016/06/26 Javascript
基于JS模仿windows文件按名称排序效果
2016/06/29 Javascript
详解Bootstrap的iCheck插件checkbox和radio
2016/08/24 Javascript
Javascript下拉刷新的简单实现
2017/02/14 Javascript
详细讲解vue2+vuex+axios
2017/05/27 Javascript
jQuery Validate插件ajax方式验证输入值的实例
2017/12/21 jQuery
Vue ElementUi同时校验多个表单(巧用new promise)
2018/06/06 Javascript
angularJs中json数据转换与本地存储的实例
2018/10/08 Javascript
vue图片加载失败时用默认图片替换的方法
2019/08/29 Javascript
vue-video-player 解决微信自动全屏播放问题(横竖屏导致样式错乱问题)
2020/02/25 Javascript
vue mvvm数据响应实现
2020/11/11 Javascript
[02:29]大剑、皮鞭、女装,这届DOTA2勇士令状里都有
2020/07/17 DOTA
wxpython 学习笔记 第一天
2009/03/16 Python
数据挖掘之Apriori算法详解和Python实现代码分享
2014/11/07 Python
Python二分查找详解
2015/09/13 Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
2017/11/29 Python
Python selenium实现微博自动登录的示例代码
2018/05/16 Python
python提取照片坐标信息的实例代码
2019/08/14 Python
Tensorflow实现将标签变为one-hot形式
2020/05/22 Python
CSS3 实现穿梭星空动画
2020/11/13 HTML / CSS
TripAdvisor日本:全球领先的旅游网站
2019/02/14 全球购物
公司委托书怎么写
2014/08/02 职场文书
2015年基建工作总结范文
2015/05/23 职场文书
停发工资证明范本
2015/06/12 职场文书
PHP实现创建以太坊钱包转账等功能
2021/04/21 PHP
golang操作redis的客户端包有多个比如redigo、go-redis
2022/04/14 Golang