區(qū)別:1、“v-bind”是單向綁定,而“v-model”是雙向綁定;2、“v-bind”只能將vue中的數(shù)據(jù)同步到頁(yè)面,而“v-model”不只能將vue中的數(shù)據(jù)同步到頁(yè)面,還可以將用戶數(shù)據(jù)的數(shù)據(jù)賦值給vue中的屬性。
本教程操作環(huán)境:windows7系統(tǒng)、vue2.9.6版,DELL G3電腦。
v-model與v-bind區(qū)別:
1、v-bind是單向綁定,用來(lái)綁定數(shù)據(jù)和屬性以及表達(dá)式,只能將vue中的數(shù)據(jù)同步到頁(yè)面。
2、v-model是雙向綁定,不只能將vue中的數(shù)據(jù)同步到頁(yè)面,而且可以將用戶數(shù)據(jù)的數(shù)據(jù)賦值給vue中的屬性。
3、v-bind可以給任何屬性賦值,v-model只能給具備value屬性的元素進(jìn)行數(shù)據(jù)雙向綁定。
一、v-model
v-model多在表單中使用,在表單元素上創(chuàng)建雙向綁定,根據(jù)控件類型選擇正確的方法更新元素,可以綁定text、radio、checkbox、selected
1. 綁定text
<input type="text" v-model="val" /> <p> {{val}} </p>
2. 綁定radio
<input type="radio" value="one" v-model="radioVal" /> <input type="radio" value="two" v-model="radioVal" /> <label for v-bind="radioval" />
radioval的值隨著選擇單選框的值,會(huì)變成one 或者 two
3. 綁定checkBox
(1)單個(gè)勾選框,最終的值為邏輯值true和false
<input type="checkbox" v-model="checkVal"/> <label for="checkbox">{{checkVal}}</label>
(2)多個(gè)勾選框時(shí),將值綁定到一個(gè)數(shù)組
<input type="checkbox" value="apple" v-model="checkArray"/> <label for="checkbox">{{apple}}</label> <input type="checkbox" value="banana" v-model="checkArray"/> <label for="checkbox">{{banana}}</label> <input type="checkbox" value="pear" v-model="checkArray"/> <label for="checkbox">{{pear}}</label> <span>{{checkArray | json}}</span>
checkArray中的值會(huì)根據(jù)是否選中進(jìn)行關(guān)聯(lián)變化
4. 綁定select
(1)綁定到單個(gè)select
(2)綁定多個(gè)select時(shí),同樣適用數(shù)組
5. 增加參數(shù)
(1)lazy
將輸入框的input事件改為change事件,使得輸入框在change事件中更新而不是input
關(guān)于change事件和input事件的區(qū)別,簡(jiǎn)單說(shuō)來(lái)是:
change事件必須是在輸入框失去焦點(diǎn)之后才會(huì)觸發(fā),而input事件可以實(shí)時(shí)監(jiān)測(cè)。
(2)number
將文本框輸入的值都變?yōu)閿?shù)字,如果是變?yōu)閿?shù)字之后是NAN,則返回原始值
(3)trim
取出輸入的字符串的首尾空格
二、v-bind
1.綁定文本
直接用v-bind或者{{}}
<p v-bind="message"></p> <p>{{message}}</p>
2.綁定屬性
<p v-bind:src="http://...."></p> <p v-bind:class="http://...."></p> <p v-bind:style="http://...."></p>
3.綁定表達(dá)式
{{ number + 1 }} {{ ok ? 'YES' : 'NO' }} {{ message.split('').reverse().join('') }}
4.綁定html
<div>{{{ raw_html }}}</div>
這個(gè)時(shí)候必須要使用三個(gè){}