文章目录
Vue.js
使用了基于 HTML 的模板语法,允许开发者声明式地将
DOM
绑定至底层
Vue
实例的数据。所有
Vue.js
的模板都是合法的 HTML ,所以能被遵循规范的浏览器和 HTML 解析器解析。
在底层的实现上,Vue
将模板编译成虚拟 DOM
渲染函数。结合响应系统,Vue
能够智能地计算出最少需要重新渲染多少组件,并把 DOM
操作次数减到最少。
如果你熟悉虚拟 DOM 并且偏爱 JavaScript 的原始力量,你也可以不用模板,直接写渲染 (render) 函数,使用可选的 JSX 语法。
一 插值
1.1 文本插值(Mustache)
v-once
的作用:只渲染元素和组件一次。随后的重新渲染,元素/组件及其所有的子节点将被视为静态内容并跳过。这可以用于优化更新性能。
<div id="app">
<p>Message: {
{ msg }}</p>
<span v-once>{
{msg}}</span>
</div>
var vm = new Vue({
el : "#app",
data : {
msg : "hi vue"
}
});
vm.msg = "hi....";
效果如下:
1.2 原始HTML
默认模式下,文本插值原封不变的将字符串输出,但是假如输出的内容希望以HTML标签的方式输出,就使用v-html="attribute"
。
注意:使用v-html属性后,元素中的内容会被忽略
<div id="app">
<p>Using mustaches: {
{ rawHtml }}</p>
<p>Using v-html: <span v-html="rawHtml">被忽略</span></p>
</div>
var vm = new Vue({
el : "#app",
data :