安装
导入导出excel这是前端做管理系统最常用的功能了,
这里使用到了两个组件: file-saver (用于保存文件) xlsx (用于导入导出excel)
npm install -S-D file-saver
npm install -S-D xlsx
2.建立文件
打开你的vue项目,在src/js文件夹下新建 json2excel.js。
import { saveAs } from 'file-saver'
import XLSX from 'xlsx/dist/xlsx.full.min'
// 将json数据处理为xlsx需要的格式
function datenum(v, date1904) {
if (date1904) v += 1462
let epoch = Date.parse(v)
return (epoch - new Date(Date.UTC(1899, 11, 30))) / (24 * 60 * 60 * 1000)
}
function data2ws(data) {
const ws = {}
const range = {s: {c: 10000000, r: 10000000}, e: {c: 0, r: 0}}
for (let R = 0; R != data.length; ++R) {
for (let C = 0; C != data[R].length; ++C) {
if (range.s.r > R) range.s.r = R
if (range.s.c > C) range.s.c = C
if (range.e.r < R) range.e.r = R
if (range.e.c < C) range.e.c = C
const cell = { v: data[R][C] }
if (cell.v == null) continue
const cell_ref = XLSX.utils.encode_cell({c: C, r: R})
if (typeof