Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
一臭打代码的 aka 潘先生です
vue-vben-admin
提交
a207cafe
V
vue-vben-admin
项目概览
一臭打代码的 aka 潘先生です
/
vue-vben-admin
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vue-vben-admin
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a207cafe
编写于
10月 19, 2020
作者:
J
jq
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(excel): update excel demo
上级
7101587b
变更
10
隐藏空白更改
内联
并排
Showing
10 changed file
with
202 addition
and
42 deletion
+202
-42
src/components/Excel/src/ExportExcelModel.vue
src/components/Excel/src/ExportExcelModel.vue
+2
-1
src/router/menus/modules/demo/charts.ts
src/router/menus/modules/demo/charts.ts
+22
-0
src/router/menus/modules/demo/comp.ts
src/router/menus/modules/demo/comp.ts
+0
-14
src/router/routes/modules/demo/charts.ts
src/router/routes/modules/demo/charts.ts
+42
-0
src/router/routes/modules/demo/comp.ts
src/router/routes/modules/demo/comp.ts
+0
-26
src/views/demo/echarts/excel/ArrayExport.vue
src/views/demo/echarts/excel/ArrayExport.vue
+36
-0
src/views/demo/echarts/excel/CustomExport.vue
src/views/demo/echarts/excel/CustomExport.vue
+43
-0
src/views/demo/echarts/excel/ImportExcel.vue
src/views/demo/echarts/excel/ImportExcel.vue
+1
-1
src/views/demo/echarts/excel/JsonExport.vue
src/views/demo/echarts/excel/JsonExport.vue
+56
-0
src/views/demo/echarts/excel/data.ts
src/views/demo/echarts/excel/data.ts
+0
-0
未找到文件。
src/components/Excel/src/ExportExcelModel.vue
浏览文件 @
a207cafe
...
...
@@ -12,6 +12,7 @@
import
{
defineComponent
}
from
'
vue
'
;
import
{
BasicModal
,
useModalInner
}
from
'
/@/components/Modal
'
;
import
{
BasicForm
,
FormSchema
,
useForm
}
from
'
/@/components/Form/index
'
;
import
{
ExportModalResult
}
from
'
./types
'
;
const
schemas
:
FormSchema
[]
=
[
{
...
...
@@ -59,7 +60,7 @@
const
[
registerModal
,
{
closeModal
}]
=
useModalInner
();
async
function
handleOk
()
{
const
res
=
await
validateFields
();
const
res
:
ExportModalResult
=
await
validateFields
();
const
{
filename
,
bookType
}
=
res
;
emit
(
'
success
'
,
{
...
...
src/router/menus/modules/demo/charts.ts
浏览文件 @
a207cafe
...
...
@@ -27,6 +27,28 @@ const menu: MenuModule = {
},
],
},
// {
// path: '/excel',
// name: 'excel',
// children: [
{
path
:
'
/customExport
'
,
name
:
'
选择导出格式
'
,
},
{
path
:
'
/jsonExport
'
,
name
:
'
JSON数据导出
'
,
},
{
path
:
'
/arrayExport
'
,
name
:
'
Array数据导出
'
,
},
{
path
:
'
/importExcel
'
,
name
:
'
导入
'
,
},
// ],
// },
],
},
};
...
...
src/router/menus/modules/demo/comp.ts
浏览文件 @
a207cafe
...
...
@@ -66,20 +66,6 @@ const menu: MenuModule = {
path
:
'
/strength-meter
'
,
name
:
'
密码强度组件
'
,
},
{
path
:
'
/excel
'
,
name
:
'
excel
'
,
children
:
[
{
path
:
'
/export
'
,
name
:
'
Export
'
,
},
{
path
:
'
/import
'
,
name
:
'
Import
'
,
},
],
},
],
},
};
...
...
src/router/routes/modules/demo/charts.ts
浏览文件 @
a207cafe
...
...
@@ -56,5 +56,47 @@ export default {
},
component
:
()
=>
import
(
'
/@/views/demo/echarts/apex/index.vue
'
),
},
// {
// path: '/excel',
// name: 'ExcelDemo',
// redirect: '/charts/excel/export',
// meta: {
// title: 'excel',
// },
// children: [
{
path
:
'
/customExport
'
,
name
:
'
CustomExport
'
,
component
:
()
=>
import
(
'
/@/views/demo/echarts/excel/CustomExport.vue
'
),
meta
:
{
title
:
'
选择导出格式
'
,
},
},
{
path
:
'
/jsonExport
'
,
name
:
'
JsonExport
'
,
component
:
()
=>
import
(
'
/@/views/demo/echarts/excel/JsonExport.vue
'
),
meta
:
{
title
:
'
JSON数据导出
'
,
},
},
{
path
:
'
/arrayExport
'
,
name
:
'
ArrayExport
'
,
component
:
()
=>
import
(
'
/@/views/demo/echarts/excel/ArrayExport.vue
'
),
meta
:
{
title
:
'
Array数据导出
'
,
},
},
{
path
:
'
/importExcel
'
,
name
:
'
ImportExcel
'
,
component
:
()
=>
import
(
'
/@/views/demo/echarts/excel/ImportExcel.vue
'
),
meta
:
{
title
:
'
导入
'
,
},
},
// ],
// },
],
}
as
AppRouteModule
;
src/router/routes/modules/demo/comp.ts
浏览文件 @
a207cafe
...
...
@@ -136,31 +136,5 @@ export default {
title
:
'
密码强度组件
'
,
},
},
{
path
:
'
/excel
'
,
name
:
'
ExcelDemo
'
,
redirect
:
'
/comp/excel/export
'
,
meta
:
{
title
:
'
excel
'
,
},
children
:
[
{
path
:
'
export
'
,
name
:
'
Export2Excel
'
,
component
:
()
=>
import
(
'
/@/views/demo/comp/excel/ExportToExcel.vue
'
),
meta
:
{
title
:
'
Export2Excel
'
,
},
},
{
path
:
'
import
'
,
name
:
'
ImportExcel
'
,
component
:
()
=>
import
(
'
/@/views/demo/comp/excel/ImportExcel.vue
'
),
meta
:
{
title
:
'
ImportExcel
'
,
},
},
],
},
],
}
as
AppRouteModule
;
src/views/demo/echarts/excel/ArrayExport.vue
0 → 100644
浏览文件 @
a207cafe
<
template
>
<div
class=
"m-4"
>
<BasicTable
title=
"基础表格"
:columns=
"columns"
:dataSource=
"data"
>
<template
#toolbar
>
<a-button
@
click=
"aoaToExcel"
>
导出
</a-button>
</
template
>
</BasicTable>
</div>
</template>
<
script
lang=
"ts"
>
import
{
defineComponent
}
from
'
vue
'
;
import
{
BasicTable
}
from
'
/@/components/Table
'
;
import
{
aoaToSheetXlsx
,
ExportExcelModel
}
from
'
/@/components/Excel
'
;
import
{
arrHeader
,
arrData
,
columns
,
data
}
from
'
./data
'
;
export
default
defineComponent
({
components
:
{
BasicTable
,
ExportExcelModel
},
setup
()
{
function
aoaToExcel
()
{
// 保证data顺序与header一致
aoaToSheetXlsx
({
data
:
arrData
,
header
:
arrHeader
,
filename
:
'
二维数组方式导出excel.xlsx
'
,
});
}
return
{
aoaToExcel
,
columns
,
data
,
};
},
});
</
script
>
src/views/demo/echarts/excel/CustomExport.vue
0 → 100644
浏览文件 @
a207cafe
<
template
>
<div
class=
"m-4"
>
<BasicTable
title=
"基础表格"
:columns=
"columns"
:dataSource=
"data"
>
<template
#toolbar
>
<a-button
@
click=
"openModal"
>
导出
</a-button>
</
template
>
</BasicTable>
<ExportExcelModel
@
register=
"register"
@
success=
"defaultHeader"
/>
</div>
</template>
<
script
lang=
"ts"
>
import
{
defineComponent
}
from
'
vue
'
;
import
{
BasicTable
}
from
'
/@/components/Table
'
;
import
{
jsonToSheetXlsx
,
ExportExcelModel
,
ExportModalResult
}
from
'
/@/components/Excel
'
;
import
{
columns
,
data
}
from
'
./data
'
;
import
{
useModal
}
from
'
/@/components/Modal
'
;
export
default
defineComponent
({
components
:
{
BasicTable
,
ExportExcelModel
},
setup
()
{
function
defaultHeader
({
filename
,
bookType
}:
ExportModalResult
)
{
// 默认Object.keys(data[0])作为header
jsonToSheetXlsx
({
data
,
filename
,
write2excelOpts
:
{
bookType
,
},
});
}
const
[
register
,
{
openModal
}]
=
useModal
();
return
{
defaultHeader
,
columns
,
data
,
register
,
openModal
,
};
},
});
</
script
>
src/views/demo/
comp
/excel/ImportExcel.vue
→
src/views/demo/
echarts
/excel/ImportExcel.vue
浏览文件 @
a207cafe
<
template
>
<div>
<div
class=
"m-4"
>
<ImportExcel
@
success=
"loadDataSuccess"
>
<a-button
class=
"m-3"
>
导入Excel
</a-button>
</ImportExcel>
...
...
src/views/demo/
comp/excel/ExportToExcel
.vue
→
src/views/demo/
echarts/excel/JsonExport
.vue
浏览文件 @
a207cafe
<
template
>
<div>
<div
class=
"m-4"
>
<BasicTable
title=
"基础表格"
:columns=
"columns"
:dataSource=
"data"
>
<template
#toolbar
>
<a-button
@
click=
"openModal"
>
JSON格式导出:默认头部
</a-button>
<a-button
@
click=
"customHeader"
>
JSON格式导出:自定义头部
</a-button>
<a-button
@
click=
"aoaToExcel"
>
二维数组格式导出
</a-button>
<a-button
@
click=
"defaultHeader"
>
导出:默认头部
</a-button>
<a-button
@
click=
"customHeader"
>
导出:自定义头部
</a-button>
</
template
>
</BasicTable>
<ExportExcelModel
@
register=
"register"
@
success=
"defaultHeader"
/>
</div>
</template>
<
script
lang=
"ts"
>
import
{
defineComponent
}
from
'
vue
'
;
import
{
BasicTable
}
from
'
/@/components/Table
'
;
import
{
jsonToSheetXlsx
,
aoaToSheetXlsx
,
ExportExcelModel
,
ExportModalResult
,
}
from
'
/@/components/Excel
'
;
import
{
columns
,
data
,
arrHeader
,
arrData
}
from
'
./data
'
;
import
{
useModal
}
from
'
/@/components/Modal
'
;
import
{
jsonToSheetXlsx
,
ExportExcelModel
}
from
'
/@/components/Excel
'
;
import
{
columns
,
data
}
from
'
./data
'
;
export
default
defineComponent
({
components
:
{
BasicTable
,
ExportExcelModel
},
setup
()
{
function
defaultHeader
(
{
filename
,
bookType
}:
ExportModalResult
)
{
function
defaultHeader
()
{
// 默认Object.keys(data[0])作为header
jsonToSheetXlsx
({
data
,
filename
,
write2excelOpts
:
{
bookType
,
},
filename
:
'
使用key作为默认头部.xlsx
'
,
});
}
function
customHeader
()
{
...
...
@@ -48,31 +37,19 @@
beginTime
:
'
开始时间
'
,
endTime
:
'
结束时间
'
,
},
filename
:
'
文件名头部修改
.xlsx
'
,
filename
:
'
自定义头部
.xlsx
'
,
json2sheetOpts
:
{
// 指定顺序
header
:
[
'
name
'
,
'
id
'
],
},
});
}
function
aoaToExcel
()
{
// 保证data顺序与header一致
aoaToSheetXlsx
({
data
:
arrData
,
header
:
arrHeader
,
filename
:
'
数组方式导出excel.xlsx
'
,
});
}
const
[
register
,
{
openModal
}]
=
useModal
();
return
{
defaultHeader
,
customHeader
,
aoaToExcel
,
columns
,
data
,
register
,
openModal
,
};
},
});
...
...
src/views/demo/
comp
/excel/data.ts
→
src/views/demo/
echarts
/excel/data.ts
浏览文件 @
a207cafe
文件已移动
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录