• checkbox-group
  • checkbox

    checkbox-group

    多项选择器,内部由多个 checkbox 组成。

    属性说明

    属性名类型默认值说明
    @changeEventHandle<checkbox-group>中选中项发生改变是触发 change 事件,detail = {value:[选中的checkbox的value的数组]}

    checkbox

    多选项目。

    属性说明

    属性名类型默认值说明
    valueString<checkbox> 标识,选中时触发 <checkbox-group> 的 change 事件,并携带 <checkbox> 的 value。
    disabledBooleanfalse是否禁用
    checkedBooleanfalse当前是否选中,可用来设置默认选中
    colorColorcheckbox的颜色,同css的color

    示例

    1. <template>
    2. <view>
    3. <view class="uni-padding-wrap uni-common-mt">
    4. <view class="uni-title uni-common-mt">默认样式</view>
    5. <view>
    6. <checkbox-group>
    7. <label>
    8. <checkbox value="cb" checked="true" />选中
    9. </label>
    10. <label>
    11. <checkbox value="cb" />未选中
    12. </label>
    13. </checkbox-group>
    14. </view>
    15. <view class="uni-title uni-common-mt">不同颜色和尺寸的checkbox</view>
    16. <view>
    17. <checkbox-group>
    18. <label>
    19. <checkbox value="cb" checked="true" color="#FFCC33" style="transform:scale(0.7)" />选中
    20. </label>
    21. <label>
    22. <checkbox value="cb" color="#FFCC33" style="transform:scale(0.7)" />未选中
    23. </label>
    24. </checkbox-group>
    25. </view>
    26. </view>
    27. <view class="uni-padding-wrap">
    28. <view class="uni-title uni-common-mt">
    29. 推荐展示样式
    30. <text>\n使用 uni-list 布局</text>
    31. </view>
    32. </view>
    33. <view class="uni-list">
    34. <checkbox-group @change="checkboxChange">
    35. <label class="uni-list-cell uni-list-cell-pd" v-for="item in items" :key="item.value">
    36. <view>
    37. <checkbox :value="item.value" :checked="item.checked" />
    38. </view>
    39. <view>{{item.name}}</view>
    40. </label>
    41. </checkbox-group>
    42. </view>
    43. </view>
    44. </template>
    45. <script>
    46. export default {
    47. data() {
    48. return {
    49. title: 'checkbox 复选框',
    50. items: [{
    51. value: 'USA',
    52. name: '美国'
    53. },
    54. {
    55. value: 'CHN',
    56. name: '中国',
    57. checked: 'true'
    58. },
    59. {
    60. value: 'BRA',
    61. name: '巴西'
    62. },
    63. {
    64. value: 'JPN',
    65. name: '日本'
    66. },
    67. {
    68. value: 'ENG',
    69. name: '英国'
    70. },
    71. {
    72. value: 'FRA',
    73. name: '法国'
    74. }
    75. ]
    76. }
    77. },
    78. methods: {
    79. checkboxChange: function (e) {
    80. var items = this.items,
    81. values = e.detail.value;
    82. for (var i = 0, lenI = items.length; i < lenI; ++i) {
    83. const item = items[i]
    84. if(values.includes(item.value)){
    85. this.$set(item,'checked',true)
    86. }else{
    87. this.$set(item,'checked',false)
    88. }
    89. }
    90. }
    91. }
    92. }
    93. </script>
    94. <style>
    95. .uni-list-cell {
    96. justify-content: flex-start
    97. }
    98. </style>

    uniapp

    示例代码说明:以上示例代码从hello uni-app示例中复制,涉及的css样式在hello uni-app的app.vue和uni.css中

    预览H5效果:使用浏览器的手机模式访问https://uniapp.dcloud.io/h5/pages/component/checkbox/checkbox

    注意

    • checkbox的默认颜色,在不同平台不一样。微信小程序是绿色的,头条小程序为红色,其他平台是蓝色的。更改颜色使用color属性。
    • 如需调节checkbox大小,可通过css的scale方法调节,如缩小到70%style="transform:scale(0.7)"

    发现错误?想参与编辑?在 GitHub 上编辑此页面!