【发布时间】:2021-03-07 07:35:19
【问题描述】:
我想为“radio div”创建一个自定义的 Vue 组件——一个 div(带有一个用于包含我想要的任何内容的插槽),它就像一个单选按钮,因此您可以选择它,并且只能选择一个多个同名。
一般来说,VueJS 中的单选按钮如下所示:
<input type="radio" name="name" value="value" v-model="variable" />
所以我想要一个类似的 API:
<div-radio name="name" value="value" v-model="variable" />
但是,当我查找 how to add v-model support to custom component 时,我在 Google 上找到的第一个链接声称:
对于
input元素,您可以像这样使用v-model:<input v-model="email" />
v-model翻译成这样:<input :value="email" @input="e => email = e.target.value" />
如果v-model 转换为:value 和@input,那么似乎不可能同时拥有一个名为“value”的道具和“v-model”——尽管事实上这就是普通的 VueJS单选按钮工作
我是否误解了v-model 的工作原理?还是有替代解决方案?还是我想要的不可能?
【问题讨论】:
标签: javascript vue.js vuejs2