首頁 >web前端 >前端問答 >vue中v-bind和v-model的差別是什麼

vue中v-bind和v-model的差別是什麼

青灯夜游
青灯夜游原創
2022-01-05 17:36:0524615瀏覽

區別:1、「v-bind」是單向綁定,而「v-model」是雙向綁定;2、「v-bind」只能將vue中的資料同步到頁面,而「v-model」不只能將vue中的資料同步到頁面,還可以將使用者資料的資料賦值給vue中的屬性。

vue中v-bind和v-model的差別是什麼

本教學操作環境:windows7系統、vue2.9.6版,DELL G3電腦。

v-model與v-bind區別:

1、v-bind是單向綁定,用來綁定資料和屬性以及表達式,只能將vue中的資料同步到頁面。

2、v-model是雙向綁定,不只能將vue中的資料同步到頁面,而且可以將使用者資料的資料賦值給vue中的屬性。

3、v-bind可以給任何屬性賦值,v-model只能給具備value屬性的元素進行資料雙向綁定。

一、v-model

v-model多在表單中使用,在表單元素上建立雙向綁定,根據控制項類型選擇正確的方法更新元素,可以綁定text、 radio、checkbox、selected

1. 綁定text

e943de7f41fde7c6082e672342ce5b5a
e388a4556c0f65e1904146cc1a846bee {{val}} 94b3e26ee717c64999d7867364b1b4a3

2. 綁定radio

<input type="radio" value="one" v-model="radioVal" />
<input type="radio" value="two" v-model="radioVal" />
<label for v-bind="radioval" />

radioval的值隨著選擇單選框的值,會變成one 或two

3. 綁定checkBox

(1)單一勾選框,最終的值為邏輯值true和false

<input type="checkbox" v-model="checkVal"/>
<label for="checkbox">{{checkVal}}</label>

(2)多個勾選方塊時,將值綁定到一個陣列

<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中的值會根據是否選取進行關聯變更

# 4. 綁定select

(1)綁定到單一select
(2)綁定多個select時,同樣適用數組

5. 增加參數

(1)lazy

將輸入框的input事件改為change事件,使得輸入框在change事件中更新而不是input

關於change事件和input事件的區別,簡單說來是:

change事件必須是在輸入框失去焦點之後才會觸發,而input事件可以即時監控。

(2)number

將文字方塊輸入的值都變成數字,如果是變成數字之後是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.綁定表達式

{{ number + 1 }}
{{ ok ? &#39;YES&#39; : &#39;NO&#39; }}
{{ message.split(&#39;&#39;).reverse().join(&#39;&#39;) }}

4.綁定html

<div>{{{ raw_html }}}</div>

這個時候必須使用三個{}

更多程式相關知識,請造訪: 程式設計影片! !

以上是vue中v-bind和v-model的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn