vant 将复选框修改为按钮样式

修改后的样式

 vant 官网样例

<van-field name="checkbox" label="复选框">
  <template #input>
    <van-checkbox v-model="checkbox" shape="square" />
  </template>
</van-field>
<van-field name="checkboxGroup" label="复选框组">
  <template #input>
    <van-checkbox-group v-model="checkboxGroup" direction="horizontal">
      <van-checkbox name="1" shape="square">复选框 1</van-checkbox>
      <van-checkbox name="2" shape="square">复选框 2</van-checkbox>
    </van-checkbox-group>
  </template>
</van-field>


export default {
  data() {
    return {
      checkbox: false,
      checkboxGroup: [],
    };
  },
};

vant 复选框只能修改图标的样式,将图标修改为button按钮即可

修改后代码

<van-field name="checkboxGroup" label="" class="checkstyle">
   <template #input>
      <van-checkbox-group v-model="Filtercriteria.checkboxGroup" direction="horizontal">
         <van-checkbox shape="square"  name="专户" style="margin-bottom:12px;">
            <template #icon="props">
               <van-button size="small" plain hairline round v-if="props.checked" color="red">专户</van-button>
               <van-button size="small" plain hairline round v-else>专户</van-button>
             </template>
         </van-checkbox>
         <van-checkbox shape="square"  name="货币" style="margin-bottom:12px;">
            <template #icon="props">
               <van-button size="small" plain hairline round v-if="props.checked" color="red">货币</van-button>
               <van-button size="small" plain hairline round v-else>货币</van-button>
             </template>
          </van-checkbox>
          <van-checkbox shape="square"  name="公墓" style="margin-bottom:12px;">
             <template #icon="props">
                <van-button size="small" plain hairline round v-if="props.checked" color="red">公墓</van-button>
                <van-button size="small" plain hairline round v-else>公墓</van-button>
              </template>
           </van-checkbox>
       </van-checkbox-group>
   </template>
</van-field>
<!-- <van-field name="checkboxGroup" label="" class="checkstyle">
        <template #input>
           <van-checkbox-group v-model="checkboxGroup" direction="horizontal">
              <van-checkbox shape="square" v-for="(item,index) in combinationtype" :key="index" :name="item.name" style="margin-bottom:12px;">
                 <template #icon="props">
                    <van-button size="small" plain hairline round v-if="props.checked" color="red">{{item.name}}</van-button>
                    <van-button size="small" plain hairline round v-else>{{item.name}}</van-button>
                 </template>
              </van-checkbox>
           </van-checkbox-group>
        </template>
     </van-field> -->


<style lang='less'>
.checkstyle{
  /deep/.van-checkbox__icon{
    height: 100%;
  }
}
</style>

单选框变按钮样式同理

<van-field name="radio">
   <template #input>
      <van-radio-group v-model="Filtercriteria.radio">
         <van-radio  name="专户" style="margin-bottom:12px;">
            <template #icon="props">
               <van-button size="small" plain hairline round  v-if="props.checked" color="red">专户</van-button>
               <van-button size="small" plain hairline round  v-else>专户</van-button>
             </template>
           </van-radio>
           <van-radio  name="货币" style="margin-bottom:12px;">
              <template #icon="props">
                 <van-button size="small" plain hairline round  v-if="props.checked" color="red">货币</van-button>
                 <van-button size="small" plain hairline round  v-else>货币</van-button>
               </template>
            </van-radio>
         </van-radio-group>
     </template>
  </van-field>

<style lang='less'>
/deep/ .van-radio__icon {
  height: 100% ;
}
</style>

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: vant checkbox 框组是一个基于 Vue.js 的 UI 组件库 Vant 中的框组件。它可以让用户在多个项中择一个或多个项,支持单和多两种模式,并且可以自定义样式和事件处理函数。使用 vant checkbox 框组可以方便地实现框功能,提高用户体验。 ### 回答2: Van-checkbox是一种基于Vue.js的框组件。 它旨在提供一个易于使用和定制的框控件,以便开发人员可以更轻松地创建多列表,表格和表单等界面。 Van-checkbox有很多特性。 它支持三种不同的样式:默认、方形和圆形。 另外,开发人员可以根据需要进行自定义CSS,并可以设置未中,已中和禁用三种状态的不同颜色。 该组件还支持两种不同的项类型:单个和多个。 如果只需要择一个项,则应使用单按钮项,并将其设置为false。 如果需要择多个项,则应将项设置为true,并设置max项的值以限制项的数量。 Van-checkbox还支持中和未中状态的处理,并且可以设置响应更改事件的处理器。 当框的状态更改时,将触发这些处理器,并可以进行处理。 此外,开发人员可以通过Van-checkbox的V-model属性来管理组件的值。 总之,van-checkbox是一个灵活且易于使用的框组件,可以方便地实现多列表,表格和表单等界面的开发。 无论是对于开发人员还是用户来说,都是一种非常有用和实用的界面元素。 ### 回答3: Vant是一款基于Vue.js的移动端UI组件库,提供了丰富的UI组件,其中之一就是Vant checkbox框组。 Vant checkbox框组是一组用于表示一组项的框,用户可以择多个项。该组件可以应用于多种场景,例如购物车中的项、表单中的多等。 使用Vant checkbox框组,需要先引入相应的Vant组件库和CSS样式,然后通过配置相应的数据和事件来实现功能。框组内的每个项都有一个value属性和一个label属性,value属性用于获取项的值,label属性用于显示项的文本内容。框组还有一个全部择的项,可以实现全和全不的功能。 当项被择或取消择时,会触发相应的事件,可以通过该事件获取所中的项值,从而进行相应的操作。另外,该组件还支持设置最大可数和是否禁用等属性,可以用于多种不同的业务需求。 总之,Vant checkbox框组是一个功能强大且使用方便的组件,可以用于各种移动端应用开发。在实际使用过程中,可以根据具体需求进行相应的配置和调整,以实现最佳效果。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值