vue:
vue里面為我們提供的常用的指令主要有一下一些
v-text
v-html
v-if
v-show
v-else
v-for
v-on
v-bind
v-model
v-pre
v-cloak
v-once
下面將一些常用的指令以分組的形式分別結合demo來進行解釋
1.v-text,v-html
第一個綁定文本 第二個綁定html
使用{{name}} 就是v-text的縮寫
注意如果標簽沒有text屬性該綁定失效 比如你在一個文本框上使用v-text是沒有效果的
由此得到的效果可以看出v-html綁定后會覆蓋此標簽內容(比如上面的“年齡:”) 記住此處是覆蓋而非
append
- 注意v-text和v-html綁定都是單向的,只能從Model到View的綁定,不能實現View到Model的更新。
2.v-model指令
v-model上面有介紹它的雙向綁定功能,對於v-model指令,vue限定只能對表單控件進行綁定,常見的有<input>、
<select>、
<textarea>等。
3.v-if和v-else指令
是一對好兄弟 需要說的是 v-if可以單獨使用但是v-else的前面必須要有一個v-if的條件或者v-show指令 這個和我們的編程原理是一樣的
4.v-show指令
是否顯示該元素如果值是false對應的Dom標簽還是會渲染到頁面上面 只是將該標簽的css屬性display設為none而已而如果你用v-if值,bool值為false的時候整個dom樹都不被渲染到頁面上面。從這點上來說看,如果你的需求是需要經常切換元素的顯示和隱藏,使用v-show效率更高,而如果你只做一次條件判斷,使用v-if更加合適。
v-show還常和v-else一起使用,表示如果v-show條件滿足,則顯示當前標簽,否則顯示v-else標簽。
5.v-for
指令需要以 item in items
形式的特殊語法。常用來綁定數據對象。
除了基礎數據之外,還支持Json數組的綁定。
在v-for里面,可以使用<template>
標簽來渲染多個元素塊,下面就基於bootstrap樣式使用v-for、v-if、v-else等實現一個簡單的demo。
6v-once
v-once表示只渲染元素和組件一次。隨后的重新渲染,元素/組件及其所有的子節點將被視為靜態內容並跳過
只要使用v-once指令的,View和Model之間除了初次渲染同步,之后便不再同步,而同一次綁定里面沒使用v-once指令的還是會繼續同步。
7.v-bind
對於html標簽的text、value等屬性,Vue里面提供了v-text、v-model去綁定。但是對於除此之外的其他屬性呢,這就要用到接下來要講的v-bind指令了。博主的理解是v-bind的作用是綁定除了text、value之外的其他html標簽屬性,常見的比如class、style、自定義標簽的自定義屬性等
8v-on
對於時間的監聽和綁定,jquery里面最常用的就是on了。同樣,在Vue里面,v-on指令用來綁定標簽的事件,其語法和v-bind基本類似。