一:插值
(1)文本
<span>Message: {{ msg }}</span>
可以使用v-once指令執(zhí)行一次性的插值硫朦,當(dāng)數(shù)據(jù)變化時苟跪,插值處內(nèi)容不會更新状共,請留心亲配,這樣會影響到該節(jié)點上所有的數(shù)據(jù)綁定
<span v-once>This will never change: {{ msg }}</span>
(2)純HTML
<div v-html="rawHtml"></div>
你的站點上動態(tài)渲染的任意 HTML 可能會非常危險尘应,因為它很容易導(dǎo)致 XSS 攻擊。請只對可信內(nèi)容使用 HTML 插值吼虎,絕不要對用戶提供的內(nèi)容插值犬钢。
(3)屬性
{{}}---不能在html屬性中使用,應(yīng)使用v-bind(簡寫::XXX)思灰,
<div v-bind:id="dynamicId"></div>
這對布爾值的屬性也有效 —— 如果條件被求值為 false 的話該屬性會被移除:
<button v-bind:disabled="someDynamicCondition">Button</button>
二:指令:指令的職責(zé)就是當(dāng)其表達式的值改變時相應(yīng)地將某些行為應(yīng)用到 DOM 上
(1)參數(shù)v-bind v-on
(2)修飾符:用于指出一個指令應(yīng)該以特殊方式綁定
.prevent 修飾符告訴 v-on 指令對于觸發(fā)的事件調(diào)用 event.preventDefault():
三:過濾器:過濾器可以用在兩個地方:mustache 插值和 v-bind 表達式
{{ message | capitalize}}
<div v-bind:id="rawId | formatId"></div>
*** Vue 2.x 中玷犹,過濾器只能在 mustache 綁定和 v-bind 表達式(從 2.1.0 開始支持)中使用,因為過濾器設(shè)計目的就是用于文本轉(zhuǎn)換官辈。為了在其他指令中實現(xiàn)更復(fù)雜的數(shù)據(jù)變換箱舞,你應(yīng)該使用計算屬性遍坟。
過濾器還可以串聯(lián)
{{ message | filterA | filterB }}
過濾器是JavaScript函數(shù),因此可以接受參數(shù)
{{ message | filterA('arg1',arg2)}}
new Vue({
// ...
filters: {
capitalize: function (value) {
if (!value) return ''
value = value.toString()
return value.charAt(0).toUpperCase() + value.slice(1)
}
}
})
四:縮寫
v-bind:href="url" ---- :href="url"
v-on:click="clickSome" --- @click="clickSome"