vue+ElementUI el-select 下拉选择 多选增加全选封装组件(TSelect组件新增下拉分页功能)

2023-10-18 TSelect组件新增下拉分页功能

2023-08-31 TSelect组件新增自定义显示下拉项label

在这里插入图片描述

1、最终效果图(含适用于条件查询组件中使用

在这里插入图片描述

2、参数配置

1、代码示例

<t-select
  v-model="selectVlaue"
  multiple
  :optionSource="listTypeInfo.stepList"
  valueKey="label"
  @change="selectChange"
/>

2、配置参数(Attributes)继承 el-select Attributes

参数说明类型默认值
v-model绑定值boolean / string / number/Array-
multiple是否多选 (显示全选)Booleanfalse
optionSource下拉数据源Array-
widthselect宽度(可以设置百分比或px)String100%
customLabel是否自定义设置下拉labelString-
valueKey传入的 option 数组中,要作为最终选择项的键值 keyString‘key’
labelKey传入的 option 数组中,要作为显示项的键值名称String‘label’
isShowPagination是否显示分页(分页不显示全选框)Booleanfalse
paginationOption分页配置项Object-

2-1、paginationOption配置参数(Attributes)继承 el-pagination Attributes

参数说明类型默认值
currentPage当前页数number1
pageSize每页显示条目个数number6
pagerCount设置最大页码按钮数。 页码按钮的数量,当总页数超过该值时会折叠number5
total总条目数number0
layout组件布局,子组件名用逗号分隔string‘total,prev, pager, next’
bind继承el-pagination属性Object-

3、继承 el-select&&el-pagination events

3、在条件查询组件中使用

 data () {
    return {
      queryData: {
        workProcedureName: null,
        workProcedureName1: null
      },
      stepList: [
        { label: '开始' },
        { label: 'POSUI' },
        { label: '11' },
        { label: 'GX123' },
        { label: '烘干破碎' },
        { label: '车间仓库' },
        { label: 'ui3333' },
        { label: 'hhh333' }
      ]
    }
  },
  computed: {
    opts () {
      return {
        workProcedureName1: {
          label: '单选工序',
          comp: 't-select',
          placeholder: '单选工序',
          bind: {
            optionSource: this.stepList,
            valueKey: 'label' // 传给后台的数据
          }
        },
        workProcedureName: {
          label: '多选工序',
          comp: 't-select',
          placeholder: '多选工序',
          bind: {
            multiple: true,
            optionSource: this.stepList,
            valueKey: 'label' // 传给后台的数据
          }
        }
      }
    },
    // 查询条件所需参数
    getQueryData () {
      const {workProcedureName, workProcedureName1} = this.queryData
      return {
        workProcedureName: workProcedureName && workProcedureName.join(','),
        workProcedureName1: workProcedureName1
      }
    }
  }

5、组件地址

gitHub组件地址

gitee码云组件地址

6、相关文章

基于ElementUi&AntdUi再次封装基础组件文档


vue+element-ui的table组件二次封装

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wocwin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值