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

聊城企业做网站2023第二波疫情已经到来

聊城企业做网站,2023第二波疫情已经到来,网站问责建设书,做电影下载网站需要什么软件好在开发中,我们需要常常为用户提供更多的数据录入方式,Excel 模板导出与导入是一个常见的功能点。本文将介绍如何使用 Vue3、exceljs 和 file-saver 实现一个自定义导出 Excel 模板,并在特定列添加下拉框选择的数据验证功能。 技术选型 excelj…

在开发中,我们需要常常为用户提供更多的数据录入方式,Excel 模板导出与导入是一个常见的功能点。本文将介绍如何使用 Vue3、exceljs 和 file-saver 实现一个自定义导出 Excel 模板,并在特定列添加下拉框选择的数据验证功能。

技术选型

  • exceljs :一个功能强大的库,用于创建、操作和读取 Excel 文件。

  • file-saver :用于保存文件,将生成的 Excel 文件保存到本地。

实现步骤

项目依赖安装

  • 安装 exceljs  

    npm install exceljs
  • 安装 file-saver  
    npm install file-saver

  代码实现

<template><div class="addBatchTask-func"><div class="title"><h2>excel表格模板下载demo</h2></div><div class="but"><a-button @click="exportExcel" type="primary"> 导出模板 </-buttona></div></div>
</template><script setup>
import * as ExcelJS from "exceljs";
import FileSaver from "file-saver";
import { ref } from "vue";
// 下载模板
const exportExcel = async () => {const excelData = [];const columns = [{ header: "姓名", key: "name", width: 10 },{ header: "年龄", key: "age", width: 10 },{ header: "性别", key: "sex", width: 10 },{ header: "家庭住址", key: "address", width: 10 },];const cell = [{key: "B",formulae: ['"男,女"'],},];console.log(cell, "cell");const _workbook = new ExcelJS.Workbook();const _sheet1 = _workbook.addWorksheet("sheet1");_sheet1.columns = columns;excelData.forEach((item) => {_sheet1.addRow(item);});for (let i = 2; i <= 999; i++) {cell.forEach((item) => {_sheet1.getCell(`${item.key}${i}`).dataValidation = {type: "list",allowBlank: true,formulae: item.formulae,};});}await _workbook.xlsx.writeBuffer().then((buffer) => {let _file = new Blob([buffer], {type: "application/octet-stream",});FileSaver.saveAs(_file, "Excel_Base.xlsx");});
};
</script><style lang="less" scoped>
</style>

代码解析

        使用 exceljs 创建一个工作簿和工作表,设置表头和列宽。通过循环为特定列的每个单元格添加下拉框数据验证。最后,将工作簿写入缓冲区,并使用 file-saver 将其保存为 Excel 文件。

扩展思考

  1. 可以考虑将模板的列和数据验证规则配置化,使其更易于维护和修改。

  2. 在导入模板时,可以对用户填写的数据进行校验,确保数据的准确性和完整性。

  3. 对于大数据量的模板导出,可以考虑使用分页或流式写入的方式,提高性能和效率。

使用手册

exceljs/README_zh.md at 5bed18b45e824f409b08456b59b87430ded023ab · exceljs/exceljs · GitHub

API 接口示例 - 《ExcelJS 开发文档 - 帮助手册 - 教程》 - 极客文档 (geekdaxue.co)

http://www.dtcms.com/wzjs/40092.html

相关文章:

  • 如何做DJ网站整站seo排名
  • 昆明cms建站模板杭州网络
  • 上海闵行做网站的公司网站推广策划方案
  • wordpress如何设置目录权限设置用广州seo推广获精准访问量
  • 昆明网站建设介绍安徽360优化
  • 重庆建筑工程安全施工管理安全网河南新站关键词排名优化外包
  • 深圳最好的网站开发公司电话网络推广都有哪些平台
  • 日本dns地址推荐seog
  • 电商网站制作教程域名检测查询
  • 河北中瑞建设集团有限公司网站品牌推广软文200字
  • 在哪个网站可以搜画画做品百度联盟官网登录入口
  • 做网站怎么推广收益大网址大全123
  • 小程序商城图标素材58同城关键词怎么优化
  • 导购网站怎么做有特色百度指数数据来源
  • web是网站设计和建设吗佛山百度推广电话
  • 温州谷歌seo潍坊seo关键词排名
  • えっちな秘密基地视频深圳seo优化方案
  • webydo生成的网站能下载代码吗全球网站流量排名查询
  • 做时时彩网站微信百度seo价格查询
  • 精神文明地方联盟网站建设友链购买有效果吗
  • 烟台网站制作怎么样推广最有效最快速
  • 杭州网站建设公司排名北京推广优化经理
  • 长春公司做网站八宿县网站seo优化排名
  • 电子元器件商城网站建设网站制作的流程是什么
  • 横岗网站建设多少钱百度发布
  • 购物网站框架百度快速收录权限域名
  • 唐山哪里建地铁优化模型有哪些
  • 我想看b站怎么看济南seo的排名优化
  • 销售网站建设工资多少商城推广软文范文
  • 做本地网站需要什么资质冯耀宗seo