Skip to content

ModalSelector

弹窗选择器,使用自定义请求,包裹TableSelector,临时存储选中选项,点确认再返回

基础用法
显示代码

使用方法

以下是一个单独使用的例子:

html
<script>
import { getUserList } from '@/api/user'

const visible = ref(false)

const searchFields = [
  {
    label: '姓名',
    prop: 'username',
    type: 'input',
  },
  {
    label: '手机号',
    prop: 'phoneNumber',
    type: 'input',
    fieldProps: {
      placeholder: '请输入手机号',
    },
  },
  {
    label: '性别',
    prop: 'gender',
    type: 'select',
    options: [
      { label: '男', value: 'male' },
      { label: '女', value: 'female' },
    ],
  },
]

const columns = [
  {
    label: 'id',
    prop: 'userId',
  },
  {
    label: '姓名',
    prop: 'name',
  },
  {
    label: '手机号',
    prop: 'phoneNumber',
  },
  {
    label: '性别',
    prop: 'gender',
  },
]
</script>

<template>
  <el-button @click="visible = true">
    弹窗选择
  </el-button>
  <ProModalSelector
    v-model:visible="visible" :width="800" :search-fields="searchFields" :service="getUserList"
    :columns="columns" row-key="userId"
  />
</template>

参数列表

参数继承 TableSelector

参数名类型描述是否必填默认值
titlestring弹窗标题'请选择'
widthnumber弹窗宽度-
visibleboolean双向绑定visible,弹窗显示隐藏-
valueRecord<string, any> | Record<string, any>[]已选中的值-

Events

事件名称回调参数描述
update:visibleboolean更改v-model:visible绑定的值
confirmRecord<string, any> | Record<string, any>[]点击确认的回调事件,返回选中数据