众所周知,v-model可以实现数据双向的绑定,我们也知道v-model其实就是一个由属性和事件组成的语法糖,如下表:
元素类型 | 属性 | 事件 |
---|---|---|
input[type=text]、textarea | value | input |
input[checkbox]、input[radio] | checked | change |
select | value | change |
同时我们也知道父子组件可以使用props和$emit进行通信,那我们的父子组件是否可以通过v-model配合$emit来进行组件间的通信呢?当然可以,我们来实现一个自定义的弹窗组件,先上效果图
打开窗口之前:
点击按钮弹窗效果:
上源码:
父组件
open
我是一个自定义组件
子组件
我是一个没有感情的title
撒花完成
或许你还有疑问,我们$emit回去的方法名称,是否只能有input和change呢?我们可以区了解一下model这个属性,好了,快乐时间过的特别快,又是时间说拜拜了