上一節中,通過 v-model
的學習,我們可以實現雙向數據綁定的的效果。在整個教程中,我們看到的示例都是表單控件方面的。實際上 v-model
還可以和組件結合在一起實現雙向數據的綁定效果。
在Web的表單控件中,我們經常為了一些特殊的視覺效果,做自定義的表單風格,比如單選按鈕、復選框和下拉選擇框之類的。那麽我們通過Vue來做這些表單控件的組件,會讓我們變得更為輕松,而且一勞永逸。接下來我們看看怎麽實現單選按鈕和復選框的組件。
自定義單選按鈕
與復選框相比,定制單選安扭相對而言要簡單。以下是一個非常基本的自定義單選按鈕。將 input
和 label
包裝在標簽中。下面這個示例是來自 @Invoke 的 Vue單選按鈕 。
我們把整個Demo寫在Codepen上,以便大家更為方便的查閱代碼。
創建 radio
組件,代碼如下:
Vue.component('radio',{ template: ` <div class="custom-radio" v-bind:class="{ inverted: inverted }"> <input type="radio" v-bind:name="name" v-bind:class="className" v-bind:id="id" v-bind:checked="checked" v-bind:value=http://www.tuicool.com/articles/"value" v-bind:required="required" v-on:change="updateInput" />