基于Vue和Quasar的前端SPA我的项目实战之数据导入(九)
回顾
通过之前一篇文章 基于Vue和Quasar的前端SPA我的项目实战之业务数据(七)的介绍,实现了业务数据根本crud性能,本文次要介绍业务数据批量导入相干内容。
简介
当数据量比拟大的时候,如果手工录入数据就会比较慢,所以通过批量导入的形式录入数据,以提高效率。这里采纳的文件格式为EXCEL,针对每个业务表,能够主动生成EXCEL模板文件,下载模板之后,间接编辑EXCEL表格,而后上传EXCEL文件进行批量导入数据。
UI界面
产品导入
API
业务数据导入相干API,包含获取模板和导入两个性能,具体的通过swagger文档能够查看。通过axios封装api,名称为table
import { axiosInstance } from "boot/axios";const table = { import: async function(tableName, data, progressCallback) { return axiosInstance.post("/api/business/" + tableName + "/import", data, { headers: HEADERS, onUploadProgress: (progressEvent) => { if (progressCallback) { progressCallback(progressEvent) } } }); }, getImportTemplate: function(tableName) { return axiosInstance.get("/api/business/" + tableName + "/import/template", { params: { } } ); }};export { table };
外围代码
代码构造
代码构造
QFile组件
<q-file v-model="localFile" label="请上传EXCEL文件"> <template v-slot:prepend> <q-icon name="attach_file" /> </template></q-file>
用到了q-file组件,用于上传EXCEL。
产品为例
下载模板,次要字段包含名称,品牌,色彩,价格,数量等,而后编辑EXCEL。
导入之后,查看发现3条数据曾经导入胜利。
小结
本文次要介绍了介绍业务数据批量导入性能,不同的业务表单都能够主动生成模板文件,通过配置的形式能够零代码实现业务数据的批量导入性能。后续会持续介绍一些高级性能。
demo演示
官网地址:https://crudapi.cn
测试地址:https://demo.crudapi.cn/crudapi/login
附源码地址
GitHub地址
https://github.com/crudapi/crudapi-admin-web
Gitee地址
https://gitee.com/crudapi/crudapi-admin-web
因为网络起因,GitHub可能速度慢,改成拜访Gitee即可,代码同步更新。