VUE学习十,模板语法,插值

一、文本:数据绑定最常见的形式就是使用“Mustache”语法 (双大括号) 的文本插值

<div id="app-10">
    {{lastname}}
</div>

通过使用 v-once 指令,你也能执行一次性地插值,当数据改变时,插值处的内容不会更新。如下:

<div id="app-10" v-once>
    {{lastname}}
</div>
// 第一个实例
var myData = { firstname: 'CL', lastname: '张' }

// 该对象被加入到一个 Vue 实例中
var vm1 = new Vue({
    el: '#app-10',
    data: myData
})

// 一旦设置v-once,这儿的更改不起效果
vm1.lastname = '李';

二、原始HTML:双大括号会将数据解释为普通文本,而非 HTML 代码。为了输出真正的 HTML,你需要使用 v-html 指令

<!-- 必须使用v-html指令,才能得到想要的效果//-->
<div id="app-11">
    <p>Using mustaches: {{ rawHtml }}</p>
    <p>Using v-html directive: <span v-html="rawHtml"></span></p>
</div>
// 第二个实例
var vm2 = new Vue({
    el: '#app-11',
    data: {rawHtml: '<span style="color:red">红色</span>'}
})

三、Attribute:Mustache 语法不能作用在 HTML attribute 上,遇到这种情况应该使用 v-bind 指令

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

对于布尔 attribute (它们只要存在就意味着值为 true),v-bind 工作起来略有不同,在这个例子中:

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

四、使用 JavaScript 表达式

实际上,对于所有的数据绑定,Vue.js 都提供了完全的 JavaScript 表达式支持。有个限制就是,每个绑定都只能包含单个表达式。

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

五、本篇文章全部代码

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>VUE简单示范</title>
<script type="text/javascript" src="../js/vue.min.js" charset="utf-8"></script>
</head>
<body>
<!--实例一、v-once的使用//-->
<div id="app-10" v-once>
    {{lastname}}
    <!--实例四、-JavaScript脚本函数 //-->
    {{firstname.split('').reverse().join('')}}
</div>
<!-- 实例二,使用v-html指令,才能得到想要的效果//-->
<div id="app-11">
    <p>Using mustaches: {{ rawHtml }}</p>
    <p>Using v-html directive: <span v-html="rawHtml"></span></p>
    <!-- 实例三,v-bind指令,绑定true/false//-->
    <button v-bind:disabled="isButtonDisabled">Button</button>
</div>
<script>
// 实例一
var myData = { firstname: 'CL', lastname: '' }
var vm1 = new Vue({
    el: '#app-10',
    data: myData
})
// 一旦设置v-once,这儿的更改不起效果
vm1.lastname = '';

// 实例二、实例三
var vm2 = new Vue({
    el: '#app-11',
    data: {rawHtml: '<span style="color:red">红色</span>', isButtonDisabled: true}
})
</script>
</body>
</html>

本文参考:

https://cn.vuejs.org/v2/guide/syntax.html

posted @ 2021-07-08 09:12  那些年的事儿  阅读(72)  评论(0编辑  收藏  举报