我使用Vue框架進行了多個組件的開發。其中,最重要和最常見的組件類型是表單組件,尤其是輸入框組件。
Vue.component('input-component', {
props: ['value'],
template: ''
})
這個輸入框組件接收一個v-model綁定,然后在內部使用了v-bind和v-on指令。該組件使用$emit方法將值傳遞回父組件。使用組件時, 可以通過v-model綁定在父組件中更新輸入框的值。
除表單組件外,我還開發了一些對話框和彈出框組件。以下是一個簡單的對話框組件,它接受標題和內容作為屬性,并顯示在對話框中:
Vue.component('dialog-component', {
props: ['title', 'visible'],
data() {
return { show: false }
},
watch: {
visible() {
this.show = this.visible;
}
},
template: `{{ title }} `
})
這個對話框組件使用了插槽(slot)功能,允許開發者在組件的標簽內部添加自定義內容。組件還使用了Vue的鉤子方法(hook),在visible屬性發生變化時更新對話框的顯示狀態。
這是對話框的內容
在開發過程中,我也遇到了需要自定義組件的情況。Vue提供了非常便利的方式來編寫組件,并使它們具有可重用性且易于維護。以上只是我開發的少部分組件,Vue的生態系統中有很多可用的開源組件供開發者使用。
上一篇vue寫鼠標事件