vue一些常用指令
阿新 • • 發佈:2019-02-09
指令
指令(Directive),換句話說就是元素的自定義屬性,在 Vue 中是以 v- 為字首的自定義屬性,屬性值為物件或 js 表示式
指令 | 型別 | 用法 |
---|---|---|
v-text | string | <span v-text="msg"></span> <!--效果等同於--> <!--v-text 的權重高於 {{}}--> <span>{{msg}}</span> |
v-html | string | <div v-html="html"></div> |
v-show | boolean | <!--show 的值會直接影響 div 在文件中是否顯示--> |
v-if | boolean | <!--status 的值會直接影響 div 在文件中是否存在--> <div v-if="status"></div> |
v-else-if | boolean | <div v-if="flag == 1">1</div> <!--必須跟 v-if 或者 v-else-if 元素後面--> <div v-else-if="flag == 2">2</div> |
v-else | 不需要表示式 | <div |
v-for | Array | Object | Number | String | <!-- data = 3 結果會生成 3 個 div, value 的值分類為 1, 2, 3 index 的值分別為 0, 1, 2 --> <div |
v-on | Function | <!--click事件直接繫結一個方法--> <button v-on:click="say1">say1</button> <!--縮寫方式--> <!--click事件使用內聯語句--> <button @click="say2('呼叫了 say2', $event)">say2</button> |
v-bind | Object | <img v-bind:src="'imgs/red.jpg'" /> <!--縮寫方式--> <img :src="'imgs/yellow.jpg'" /> |
v-model | 表單元素的值 | <!--僅限於表單元素,雙向繫結--> <input type="text" v-model="mess"/> |
v-pre | 不需要表示式 | <!--{{}} 不編譯,當字串輸出--> <span v-pre>{{mess}}</span> |
v-cloak | 不需要表示式 | <!-- mess = 'abc' span 還沒被 vue 解析的時候會顯示 {{mess}} 解析後會顯示 123 用於解決這兩個轉換的過程不友好的顯示 尤其是在頁面載入過慢的情況很容易出現這種情況 --> <span v-cloak>{{mess}}</span> |
v-once | 不需要表示式 | <!--內容只解釋一次,當改變 mess 時不會再次對映到 span--> <span v-once>{{mess}}</span> |