adminPage-vue3依赖TablePage说明文档,列表搜索页快速开发,使用思路及范例(Ⅰ)配置项文档

引入

import { TablePage} from 'adminpage-vue3'

思路介绍

本组件是基于element-UI进行快速搭建搜索列表页的依赖,主干思路为:将异步接口声明到组件的tableApi属性,并将搜索项通过formConfig声明给组件,将搜索、重置、分页的逻辑均交给组件内部去处理,达到最简化的代码实现,对于标准搜索列表页能够进行快速开发。
如下所示,便完成了一个标准搜索列表页的开发

<template>
  <table-page :formConfig="formConfig" :tableApi="getMessageList" >
    <template #default>
      <el-table-column type="index" label="序号" align="center" width="90" />
      <el-table-column prop="recieveUserName" label="接收人姓名" align="center" min-width="90" show-overflow-tooltip />
      <el-table-column prop="recieveUserPhone" label="接收人电话" align="center" min-width="90" show-overflow-tooltip />
      <el-table-column prop="content" label="内容" align="center" min-width="90" show-overflow-tooltip />
      <el-table-column prop="createTime" label="提交时间" align="center" min-width="90" show-overflow-tooltip />
      <el-table-column prop="sendTime" label="发送时间" align="center" min-width="90" show-overflow-tooltip />
      <el-table-column prop="recieveTime" label="送达时间" align="center" min-width="90" show-overflow-tooltip />
      <el-table-column prop="recieveStatusVal" label="送达状态" align="center" min-width="90" show-overflow-tooltip />
    </template>
  </table-page>
</template>
<script setup>
  import { TablePage} from 'adminpage-vue3'
  import { getMessageList } from '@/api/message' // 接口
  const formConfig= [
    {
      label: '时间',
      type: 'times'
    },
    {
      label: '电话',
      key: 'phone'
    }
  ]
</script>
<style lang="scss" scoped></style>

在这里插入图片描述

全文档模拟接口的数据结构

  const getMessageList = () => ({
    total: 5,
    data: new Array(5).fill({ name: '张三', phone: '13x-xxxx-xxxx' })
  })

TablePage-vue3 API汇总

属性

属性名说明类型默认值版本号
tableApi[必填]表格api【可异步】FunctionPromise.reject()1.0.0
title标题String当前route的meta?.title1.0.0
noTitle无标题标识Boolean-1.0.0
noPage不显示分页器标识Boolean-1.0.0
noMountedGetDataonMounted 不获取数据标识 ,为true时不会默认调用api接口,需要外部触发getList,但是分页和搜索仍会调用接口Boolean-1.0.0
loading外部loading传入,与内部loading为<或>的关系Boolean-1.0.0
noSearchModel无表单搜索标识Boolean-1.0.0
changeToSearch表单change事件是否触发搜索Boolean-1.0.0
tableHeight表格高度Number/String5501.0.0
formConfig搜索项设置 与FromPage一致Array[]1.0.0
changeParams参数预处理【可异步】Function(value) => value1.0.0
resetFun重置触发【可异步】Function() => {}1.0.0
tableFileter表格过渡效果【可异步】Function(list) => list1.0.0
searchOver搜索完成触发函数Function()=>{}1.0.0
props配置选项Object{}1.0.0
tableColumnList表格列list【当default 或 tableShow插槽使用时,将不会使用tableColumnList进行渲染】Array[]1.0.0
paginationProps分页器配置选项【将element-ui中的pagination相关属性写进该对象里即可】Object{}1.0.0
searchOver搜索完成触发函数Function(params)()=>{}1.0.0

插槽

插槽名说明版本号
buttonModule按钮1.0.0
tableTopModule本插槽位置位于table上方,搜索项下方1.0.0
default / tableShow表格展示插槽【当default 或 tableShow插槽使用时,将不会使用tableColumnList进行渲染】1.0.0
[你设定的slotName]本组件内部使用了大量的动态组件,方便配置,可阅读文档自行设置插槽名1.0.0

Exposes

值名说明版本号
searchHandler()执行数据获取1.0.0
resetHandler()执行重置逻辑1.0.0
queryParams获取页面搜索参数1.0.0
inputQueryParams页面输入参数1.0.0
getParams接口查询参数1.0.0
tableList获取表格数据1.0.0
TableReftableRef对象1.0.0
updateHandler执行更新逻辑1.0.0

自定义对象

formConfig(array<object> 类型)

请查阅FormPage组件的formConfig 配置项
adminPage-vue3依赖FormPage说明文档,表单页快速开发,使用思路及范例——汇总文档

props(object类型)

属性名说明类型默认值版本号
pageNumKey接口调用时的当前页码字段Stringpage1.0.0
pageSizeKey接口调用时的每页显示条目个数字段Stringlimit1.0.0
totalKey接口调用时的总页数字段Stringcount1.0.0
dataKey接口调用时的列表数据字段Stringdata1.0.0
pageNumInit列表默认当前页码Number11.0.0
pageSizeInit列表默认每页显示条目个数Number101.0.0

tableColumnList(array<object> 类型)

属性名说明类型默认值版本号
slotName使用插槽嵌入tableColumn,并使用slotName为插槽keyString-1.0.0
alignelement-UI的 tableColumn中align字段复写默认值Stringcenter1.0.0
element-UI的 tableColumn中的字段均可直接声明1.0.0
child子tableColumn,嵌套tableColumn使用Array-1.0.0

关于搜索逻辑的细节

默认值赋值

默认值 用户填写 搜索条件 配置项更新 配置项更新 默认值 用户填写 搜索条件

搜索功能

用户填写 搜索条件 API接口 搜索按钮被点击 【或】 searchHandler函数被调用 接口调用 用户填写 搜索条件 API接口

重置功能

默认值 用户填写 搜索条件 API接口 重置按钮被点击【或】resetHandler函数被调用 重置按钮被点击【或】resetHandler函数被调用 接口调用 默认值 用户填写 搜索条件 API接口

重置功能

搜索条件 API接口 updateHandler函数被调用 接口调用 搜索条件 API接口

合并对比

默认值 用户填写 搜索条件 API接口 配置项更新 配置项更新 搜索按钮被点击 【或】 searchHandler函数被调用 接口调用 重置按钮被点击【或】resetHandler函数被调用 重置按钮被点击【或】resetHandler函数被调用 接口调用 updateHandler函数被调用 接口调用 默认值 用户填写 搜索条件 API接口

Props

属性名说明类型默认值
searchOver搜索完成触发函数Function(params)()=>{}

searchOver

searchOver 新增参数params 将搜索相关参数回传给searchOver函数进行处理

searchConfig

searchConfig-type为’times’新增绑定key值

新增字段startKey 与 endKey
时间框选范围第一个值将赋值给params[startKey],第二个值将赋值给params[endKey]

属性名说明类型默认值
startKey开始时间Key值StringstartTime
endKey开始时间Key值StringendTime

以下图配置代码为例

  {
    label: '数据时间',
    type: 'times'
  },
  {
    label: '转发时间',
    type: 'times',
    startKey: 'sjzfStartTime',
    endKey: 'sjzfEndTime'
  },

在这里插入图片描述

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

_默_

别打赏了,点点赞,点点关注就行

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

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

打赏作者

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

抵扣说明:

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

余额充值