是我們常用的雙向繫結方法,如果在自定義元件中如何使用v-model進行雙向繫結呢?
首先我們必須要清除v-model繫結的原理如下:
其實v-model的語法糖是這樣包裝而成的:
而乙個元件上使用時則會簡化成這樣子:
">
因此,對於乙個帶有 v-model 的元件(核心用法),它應該如下:
1、帶有v-model的父元件通過繫結的value值(即v-model的繫結值)傳給子元件,子元件通過 prop接收乙個 value;
2、子元件利用 $emit 觸發 input 事件,並傳入新值value給父元件;
this.$emit('input', value);
簡單**示例:
msg: }
num: }
vue.component('my-component',
},props: ['value'], //接收乙個 value prop
methods:
}});
vue.component("my-counter", ,
data: function()
},methods: ,
minu()
}}});
new vue(
})
這樣在元件上就能夠實現,v-model的雙向資料繫結。
技術提供:昆明貓咪科技
vue 使用自定義元件
新建專案,ctrl r進入cmd,切換至工作目錄 c users asus f f cd study f study cd vue f study vue cd demo 安裝 vue cli npm install g vue cli?target directory exists.continu...
Vue 自定義元件
元件 component 是vue.js 最強大的功能。元件可以封裝可重用的 通過傳入物件的不同,實現元件的復用,但元件傳值就成為乙個需要解決的問題。父元件向子元件傳值 元件例項的作用域是孤立的。這意味著不能在子元件的模板內直接引用父元件的資料。要讓子元件使用父元件的資料,我們需要通過子元件的 pr...
Vue 自定義元件
元件 component 是 vue.js 最強大的功能之一。元件可以擴充套件 html 元素,封裝可重用的 在較高層面上,元件是自定義元素,vue.js 的編譯器為它新增特殊功能。在有些情況下,元件也可以表現為用is 特性進行了擴充套件的原生 html 元素。所有的 vue 元件同時也都是 vue...