vue笔记---模板语法-插值



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。
不应该在模板表达式中试图访问用户自定义的全局变量
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值