模板语法v-html
vue使用一种基于HTML的模板语法,使我们能够声明式的将其组件实例的数据绑定到呈现的DOM上,所有的vue模板都是语法层面的HTML,可以被符合规范的浏览器和HTML解释器解析。
一.文本插值
最基本的数据绑定形式是文本插值,它使用的是“Mustache”语法(即双大括号):
代码片段:
<template>
<div>{{ msg }}</div>
</template><script >
export default {data() {return {msg: "Hello, Vue!"}}
}
</script>
运行结果:
二.使用JavaScript表达式
每一个绑定仅支持单一表达式,也就是一段能被求值的JavaScript的代码,一个简单的判断方法是是否可以合法的写在return
后面。
<template>
<p>{{number + 1}}</p>
<p>{{ok? 'YES' : 'NO'}}</p>
<!-- 字符串翻转 -->
<p>{{ Message.split('').reverse().join('') }}</p></template><script >
export default {data() {return {number:10,ok:true,Message:'hello world'}}
}
</script>
运行结果:
无效情况,原因是不满足单一表达式
三.元素HTML
双大括号将会将数据插值为纯文本,而不是HTML,需要使用v-html
指令。
<template>
<p>纯文本:{{ rawHtml }}</p>
<p>属性:<span v-html="rawHtml"></span></p>
</template><script >
export default {data() {return {rawHtml: '<span style="color: red">This is some <strong>raw HTML</strong></span>'}}
}
</script>
运行结果: