mirror of
https://gitee.com/x-extends/vxe-table-plugin-export-xlsx.git
synced 2026-01-21 05:21:33 +08:00
优化导出参数
This commit is contained in:
11
README.md
11
README.md
@@ -28,7 +28,7 @@ VXETable.use(VXETablePluginExport)
|
||||
```html
|
||||
<vxe-toolbar>
|
||||
<template v-slot:buttons>
|
||||
<vxe-button @click="$refs.exportData({ type: 'xlsx' })">导出.xlsx</vxe-button>
|
||||
<vxe-button @click="exportEvent">导出.xlsx</vxe-button>
|
||||
</template>
|
||||
</vxe-toolbar>
|
||||
|
||||
@@ -57,6 +57,15 @@ export default {
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
exportEvent() {
|
||||
this.$refs.exportData({
|
||||
filename: 'export',
|
||||
sheetName: 'Sheet1',
|
||||
type: 'xlsx'
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
5
dist/index.common.js
vendored
5
dist/index.common.js
vendored
File diff suppressed because one or more lines are too long
3
dist/index.js
vendored
3
dist/index.js
vendored
@@ -43,6 +43,7 @@
|
||||
columns = params.columns,
|
||||
datas = params.datas;
|
||||
var filename = options.filename,
|
||||
sheetName = options.sheetName,
|
||||
type = options.type,
|
||||
isHeader = options.isHeader,
|
||||
original = options.original;
|
||||
@@ -66,7 +67,7 @@
|
||||
skipHeader: true
|
||||
}); // 转换数据
|
||||
|
||||
XLSX.utils.book_append_sheet(book, sheet, filename);
|
||||
XLSX.utils.book_append_sheet(book, sheet, sheetName);
|
||||
var wbout = XLSX.write(book, {
|
||||
bookType: type,
|
||||
bookSST: false,
|
||||
|
||||
2
dist/index.min.js
vendored
2
dist/index.min.js
vendored
@@ -1 +1 @@
|
||||
!function(e,t){if("function"==typeof define&&define.amd)define("vxe-table-plugin-export",["exports","xe-utils","xlsx","file-saver"],t);else if("undefined"!=typeof exports)t(exports,require("xe-utils"),require("xlsx"),require("file-saver"));else{var r={exports:{}};t(r.exports,e.XEUtils,e.xlsx,e.fileSaver),e.VXETablePluginExport=r.exports.default}}(this,function(e,x,v,y){"use strict";var t;function a(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return a=function(){return e},e}function r(e){if(e&&e.__esModule)return e;var t=a();if(t&&t.has(e))return t.get(e);var r={};if(null!=e){var n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=n?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(r,o,i):r[o]=e[o]}}return r.default=e,t&&t.set(e,r),r}function n(e){var t=e.options,n=e.columns,r=e.datas,o=t.filename,i=t.type,a=t.isHeader,l=t.original,u={};a&&n.forEach(function(e){u[e.id]=e.getTitle()});var s=r.map(function(t){var r={};return n.forEach(function(e){r[e.id]=l?x.default.get(t,e.property):t[e.id]}),r}),f=v.utils.book_new(),p=v.utils.json_to_sheet((a?[u]:[]).concat(s),{skipHeader:!0});v.utils.book_append_sheet(f,p,o);var c=v.write(f,{bookType:i,bookSST:!1,type:"binary"}),d=new Blob([function(e){for(var t=new ArrayBuffer(e.length),r=new Uint8Array(t),n=0;n!==e.length;++n)r[n]=255&e.charCodeAt(n);return t}(c)],{type:"application/octet-stream"});y.saveAs(d,"".concat(o,".").concat(i))}function o(e){switch(e.options.type){case"xlsx":return n(e),!1}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.VXETablePluginExport=void 0,x=(t=x)&&t.__esModule?t:{default:t},v=r(v),y=r(y);var i={install:function(e){Object.assign(e.types,{xlsx:1}),e.interceptor.add("event.export",o)}};e.VXETablePluginExport=i,"undefined"!=typeof window&&window.VXETable&&window.VXETable.use(i);var l=i;e.default=l});
|
||||
!function(e,t){if("function"==typeof define&&define.amd)define("vxe-table-plugin-export",["exports","xe-utils","xlsx","file-saver"],t);else if("undefined"!=typeof exports)t(exports,require("xe-utils"),require("xlsx"),require("file-saver"));else{var r={exports:{}};t(r.exports,e.XEUtils,e.xlsx,e.fileSaver),e.VXETablePluginExport=r.exports.default}}(this,function(e,v,y,b){"use strict";var t;function a(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return a=function(){return e},e}function r(e){if(e&&e.__esModule)return e;var t=a();if(t&&t.has(e))return t.get(e);var r={};if(null!=e){var n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=n?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(r,o,i):r[o]=e[o]}}return r.default=e,t&&t.set(e,r),r}function n(e){var t=e.options,n=e.columns,r=e.datas,o=t.filename,i=t.sheetName,a=t.type,l=t.isHeader,u=t.original,s={};l&&n.forEach(function(e){s[e.id]=e.getTitle()});var f=r.map(function(t){var r={};return n.forEach(function(e){r[e.id]=u?v.default.get(t,e.property):t[e.id]}),r}),p=y.utils.book_new(),c=y.utils.json_to_sheet((l?[s]:[]).concat(f),{skipHeader:!0});y.utils.book_append_sheet(p,c,i);var d=y.write(p,{bookType:a,bookSST:!1,type:"binary"}),x=new Blob([function(e){for(var t=new ArrayBuffer(e.length),r=new Uint8Array(t),n=0;n!==e.length;++n)r[n]=255&e.charCodeAt(n);return t}(d)],{type:"application/octet-stream"});b.saveAs(x,"".concat(o,".").concat(a))}function o(e){switch(e.options.type){case"xlsx":return n(e),!1}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.VXETablePluginExport=void 0,v=(t=v)&&t.__esModule?t:{default:t},y=r(y),b=r(b);var i={install:function(e){Object.assign(e.types,{xlsx:1}),e.interceptor.add("event.export",o)}};e.VXETablePluginExport=i,"undefined"!=typeof window&&window.VXETable&&window.VXETable.use(i);var l=i;e.default=l});
|
||||
4
index.ts
4
index.ts
@@ -12,7 +12,7 @@ function toBuffer(wbout: any) {
|
||||
|
||||
function toXLSX(params: any) {
|
||||
const { options, columns, datas } = params
|
||||
const { filename, type, isHeader, original } = options
|
||||
const { filename, sheetName, type, isHeader, original } = options
|
||||
const colHead: any = {}
|
||||
if (isHeader) {
|
||||
columns.forEach((column: any) => {
|
||||
@@ -29,7 +29,7 @@ function toXLSX(params: any) {
|
||||
const book = XLSX.utils.book_new()
|
||||
const sheet = XLSX.utils.json_to_sheet((isHeader ? [colHead] : []).concat(rowList), { skipHeader: true })
|
||||
// 转换数据
|
||||
XLSX.utils.book_append_sheet(book, sheet, filename)
|
||||
XLSX.utils.book_append_sheet(book, sheet, sheetName)
|
||||
const wbout = XLSX.write(book, { bookType: type, bookSST: false, type: 'binary' })
|
||||
const blob = new Blob([toBuffer(wbout)], { type: 'application/octet-stream' })
|
||||
// 保存导出
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "vxe-table-plugin-export",
|
||||
"version": "1.0.0",
|
||||
"version": "1.0.1",
|
||||
"description": "基于 vxe-table 表格的增强插件,支持导出 xlsx 等格式",
|
||||
"scripts": {
|
||||
"lib": "gulp build"
|
||||
|
||||
Reference in New Issue
Block a user