老大说 select
不方便。让我改成 radio
组的样子,然而我是个前端菜鸡(T-T)。跪求大佬解答 Orz
var temp = '<label class="btn btn-default" :for="id">{{ name }}'
+ '<input :id="id" type="radio" :value="id" :checked="checkVal" @change="update"></label>';
Vue.component('radio-tag', {
template: temp,
model:{
prop: 'modelVal',
event: 'change'
},
props: {
id: String,
name: String,
selected: String,
modelVal: ''
},
computed: {
checkVal () {
alert('check');
return this.modelVal = this.id;
}
},
methods: {
update() {
alert('update');
this.$emit('change', this.modelVal);
}
}
});
<div class="btn-group" data-toggle="buttons">
<radio-tag v-for="item in items" :id="item.id" :name="item.name" :selected="s" v-model="s"></radio-tag>
</div>
radio
点击就没有反应, checkVal
和 update
都没进。更没有把点的 radio
值绑定到 s
上了。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.