级联选择+select+checkbox器

 因为需求原因element和antd都不包含一级单选。二级多选选择器的选择器,该组件引用了antd的一切icon、card和checkbox组件,如果你用的是element 请替换<a-。  不能复制直接用的代码都是垃圾,废话少说直接上代码。

<template>
  <!-- 折叠下拉面板 -->
  <div ref="main">
    <div class="input-box" @click="handleChangeAddress" ref="barparent">
      <div v-for="(item,indx) in dataList" class="laber-box" :key="indx">
        <span>{
  
  {item}}</span>
        <a-icon type="close" class="delete" @click="hedeleDate(item)" />
      </div>
    </div>
    <div class="card-conter" :style="{width:parentClientWidth+'px'}">
      <div class="card-box" v-if="isshow">
        <a-card style="width: 50%">
          <p class="item" v-for="(item,index) in children" :key="index" :class="{'active':active===index}" @click="headleList(item,index)">
            <span>{
  
  {item.label}}</span>
            <a-icon type="right" class="po-right" />
          </p>
        </a-card>
        <a-card style="width: 50%" v-show="childrenDate.length!==0">
          <a-checkbox-group v-model="changeDate.displayRule" @change="onChange">
            <a-row>
              <a-col class="item" :span="24" v-for="(item,index) in childrenDate" :ke
在使用 Ant Design 的级联选择(`Cascader`)并启用了多选模式(`multiple`)的情况下,如果希望去除复选框(checkbox),可以通过自定义 `fieldNames` 和 `displayRender` 属性来实现。 ### 实现思路 1. **隐藏复选框** 通过设置 `fieldNames` 来指定数据结构中用于标识是否显示为叶子节点的字段,并结合 `displayRender` 来控制选项的展示内容,从而避免显示复选框。 2. **CSS 样式控制** 如果仍然看到复选框,可以使用 CSS 或 Less 样式覆盖 Ant Design 默认的 checkbox 样式,将其隐藏[^1]。 ### 示例代码 ```jsx import React from 'react'; import { Cascader } from 'antd'; const options = [ { value: 'zhejiang', label: 'Zhejiang', children: [ { value: 'hangzhou', label: 'Hangzhou', children: [ { value: 'xihu', label: 'West Lake', }, ], }, ], }, { value: 'jiangsu', label: 'Jiangsu', children: [ { value: 'nanjing', label: 'Nanjing', children: [ { value: 'zhonghuamen', label: 'Zhong Hua Men', }, ], }, ], }, ]; const MyCascader = () => { const displayRender = (labels) => { return labels.join(' / '); }; return ( <Cascader options={options} multiple fieldNames={{ label: 'label', value: 'value', children: 'children' }} displayRender={displayRender} style={{ width: '300px' }} /> ); }; export default MyCascader; ``` ### 样式补充 如果上述方式无法完全隐藏 checkbox,可以在样式文件中添加以下 CSS 或 Less 规则: ```less .ant-cascader-multiple .ant-select-selection-item .ant-checkbox-wrapper { display: none !important; } ``` 这样可以确保在多选模式下,选项项中不再显示复选框元素[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值