Radio 单选框

    基本组件-单选框。主要用于一组可选项单项选择,或者单独用于切换到选中状态。

    单独使用

    使用 v-model 可以双向绑定数据。

    Radio 单选框 - 图2

    组合使用

    使用实现一组互斥的选项组。在组合使用时,Radio 使用 label 来自动判断。每个 Radio 的内容可以自定义,如不填写则默认使用 label 的值。

    1. <template>
    2. <RadioGroup v-model="phone">
    3. <Radio label="apple">
    4. <Icon type="logo-apple"></Icon>
    5. <span>Apple</span>
    6. </Radio>
    7. <Radio label="android">
    8. <Icon type="logo-android"></Icon>
    9. <span>Android</span>
    10. </Radio>
    11. <Radio label="windows">
    12. <Icon type="logo-windows"></Icon>
    13. <span>Windows</span>
    14. </Radio>
    15. </RadioGroup>
    16. <RadioGroup v-model="animal">
    17. <Radio label="金斑蝶"></Radio>
    18. <Radio label="爪哇犀牛"></Radio>
    19. <Radio label="印度黑羚"></Radio>
    20. </RadioGroup>
    21. </template>
    22. <script>
    23. export default {
    24. return {
    25. phone: 'apple',
    26. animal: '爪哇犀牛'
    27. }
    28. }
    29. }
    30. </script>

    不可用

    通过设置属性来禁用单选框。

    Radio 单选框 - 图4

    垂直

    设置属性 vertical 可以垂直显示,按钮样式下无效。

    1. <template>
    2. <RadioGroup v-model="vertical" vertical>
    3. <Radio label="apple">
    4. <Icon type="social-apple"></Icon>
    5. <span>Apple</span>
    6. </Radio>
    7. <Radio label="android">
    8. <Icon type="social-android"></Icon>
    9. <span>Android</span>
    10. </Radio>
    11. <Radio label="windows">
    12. <Icon type="social-windows"></Icon>
    13. <span>Windows</span>
    14. </Radio>
    15. </RadioGroup>
    16. </template>
    17. <script>
    18. export default {
    19. data () {
    20. return {
    21. vertical: 'apple'
    22. }
    23. }
    24. </script>

    组合使用时可以设置属性type为 button 来应用按钮的样式。

    Radio 单选框 - 图6

    尺寸

    通过设置属性sizelargesmall将按钮样式设置为大和小尺寸,不设置为默认(中)尺寸。

    1. <template>
    2. <RadioGroup v-model="button4" type="button" size="large">
    3. <Radio label="北京"></Radio>
    4. <Radio label="深圳"></Radio>
    5. <Radio label="杭州"></Radio>
    6. </RadioGroup>
    7. <RadioGroup v-model="button5" type="button">
    8. <Radio label="北京"></Radio>
    9. <Radio label="上海"></Radio>
    10. <Radio label="深圳"></Radio>
    11. <Radio label="杭州"></Radio>
    12. </RadioGroup>
    13. <RadioGroup v-model="button6" type="button" size="small">
    14. <Radio label="北京"></Radio>
    15. <Radio label="上海"></Radio>
    16. <Radio label="深圳"></Radio>
    17. <Radio label="杭州"></Radio>
    18. </RadioGroup>
    19. </template>
    20. <script>
    21. export default {
    22. data () {
    23. return {
    24. button4: '北京',
    25. button5: '北京',
    26. button6: '北京'
    27. }
    28. }
    29. </script>