radio-group
组件是一组中只能选择一个 radio
的组合。
API
以下是 radio-group
组件的 API 介绍:
属性列表
name
:<radio-group/>
中的<radio/>
组件的name
属性一致时,所有<radio/>
属于同一组。
事件列表
change
:<radio/>
标签的value
属性发生变化时,触发change
事件,event.detail = {value: 选中项radio的value}
。
示例
以下是 radio-group
组件在页面中的使用示例:
html
<radio-group name="group1" bindchange="radioChange">
<label class="radio" v-for="(item, index) in radioItems" :key="item.value">
<radio value="{{item.value}}" checked="{{item.checked}}">{{item.name}}</radio>
</label>
</radio-group>
JavaScript 部分:
javascript
export default {
data() {
return {
radioItems: [
{ name: 'Apple', value: 'apple', checked: false },
{ name: 'Banana', value: 'banana', checked: true },
{ name: 'Grape', value: 'grape', checked: false }
]
};
},
methods: {
radioChange: function(e) {
let radioItems = this.radioItems;
for (let i = 0, len = radioItems.length; i < len; ++i) {
radioItems[i].checked = radioItems[i].value === e.detail.value;
}
this.radioItems = radioItems;
}
}
}
在这个示例中,三个 radio
元素被包含在一个 radio-group
里面,用户的选择会触发 radioChange
方法。该方法会遍历所有 radio
项,并将被选中项的 checked
属性设置为 true
。
注意,label
组件可以用来增强用户体验,允许用户点击文字选中对应的 radio
。
更详细的内容请参考最新的 uni-app 官方文档。