当前位置: 首页 > article >正文

vue vben admin 使用, (个人感觉这项目封装的太深了!!!!)

useTable 使用

我们是不会被困难打败的, 只会越战越勇!

开启了表单搜索功能, demo 代码是 formtable 组件, 个人还是比较喜欢 template 方式, 这样的方式使用不了 getForm 这种方法

需要注意的是, 如果使用了组件表单搜索功能, 就是说你需要提供一个获取数据的api, 这里着重去看怎么适配表格需要的响应数据结构

  • 组件代码
<template>
  <BasicTable
    ref="bastTable"
    :can-resize="true"
    :use-search-form="true"
    :form-config="getFormConfig()"
    :api="demoListApi"
    :columns="getBasicColumns()"
  />
  <div>get</div>
</template>
<script lang="ts">
  import { defineComponent } from 'vue';
  import { BasicTable } from '/@/components/Table';
  import { getBasicColumns, getFormConfig } from './tableData';

  import { demoListApi } from '/@/api/demo/table';

  export default defineComponent({
    components: { BasicTable },
    setup() {
      return {
        demoListApi,
        getFormConfig,
        getBasicColumns,
      };
    },
  });
</script>

  • 表格的请求数据结构配置
    代码地址
table: {
    // Form interface request general configuration
    // support xxx.xxx.xxx
    fetchSetting: {
      // The field name of the current page passed to the background
      pageField: 'page',
      // The number field name of each page displayed in the background
      sizeField: 'pageSize',
      // Field name of the form data returned by the interface
      listField: 'items',
      // Total number of tables returned by the interface field name
      totalField: 'total',
    },

如果你的数据结构不满足, 可以在请求方法里面做一层转换; 在请求方法里面重新返回一个 promise 对象, 用满足规定的格式返回就可以了

export const demoListApi = (params: DemoParams) => {
  return new Promise((resolve, reject) => {
    defHttp
      .get<DemoListGetResultModel>({
        url: Api.DEMO_LIST,
        params,
        headers: {
          // @ts-ignore
          ignoreCancelToken: true,
        },
      })
      .then((res) => {
        resolve({
          items: res.items,
        });
      });
  });
};

建议表格这种东西使用 vben自己封装的, ant design 自身的还需要你去动态调整表格高度


http://www.kler.cn/a/4700.html

相关文章:

  • 使用 configparser 读取 INI 配置文件
  • 金融项目实战 06|Python实现接口自动化——日志、认证开户接口
  • 开源项目stable-diffusion-webui部署及生成照片
  • 【微服务】面试题 5、分布式系统理论:CAP 与 BASE 详解
  • 通过外部化 `config.properties` 文件更换数据库配置
  • 【Pandas】pandas Series rtruediv
  • 【故障诊断】用于轴承故障诊断的性能增强时变形态滤波方法及用于轴承断层特征提取的增强数学形态算子研究(Matlab代码实现)
  • JavaScript 基础 - 第3天
  • 刷题笔记【1】| 快速刷完67道剑指offer(Java版)
  • 四个常见的Linux面试问题
  • 2023年全国最新保安员精选真题及答案37
  • Qt 5基础 | 创建Hello World程序
  • day 14-文件操作
  • HTTP协议加强
  • 【C++】异常
  • Java中常见的密码学知识
  • 对于PM来说:拥有PMP证书,就拥有更多机会
  • 健身房训练计划—背部
  • 【学习笔记】CF1290
  • 【面试】如何定位线上问题?
  • 认证、认可、检验检测分不清?这篇必看
  • 是德N9030B频谱分析仪主要特性和功能
  • 高并发系统设计:缓存、降级、限流、(熔断)
  • [DFS]
  • AutoML-sklearn and torch
  • 学习HM微博项目第4天