<script>
let thead = [
{text: 'ID', key: 'id'},
{text: '姓名', key: 'name'},
{text: '性别', key: 'sex'},
{text: '身份证号', key: 'idCard'},
{text: '出身日期', key: 'birthday'},
{text: '年龄', key: 'age'},
{text: '联系电话', key: 'tel'},
];
let tbody = [];
let sexArr = ['男', '女'];
for (let i = 1; i <= 10; i++) {
tbody.push({
id: i,
name: 'xx' + i,
sex: sexArr[Math.round(Math.random())],
idCard: '53010020001111234X',
birthday: '2000/11/11',
age: 21,
tel: 13123456789
});
}
exportExcel(thead, tbody, '人员信息表');
exportExcel(thead, tbody, sheetName) {
/**
* 增加\t为了不让表格显示科学计数法或者其他格式
* 添加\n为了表格换行
*/
let list = [];
let str = '';
thead.map((item, i) => {
if (i > 0) str += ',';
str += '\t' + item.text;
});
list.push(str);
tbody.map(item => {
let str = '';
thead.map((v, i) => {
if (i > 0) str += ',';
str += '\t' + (item[v.key] ? item[v.key] : '');
});
list.push('\n' + str);
});
let data = list.join('');
const url = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(data);
let a = document.createElement('a');
a.href = url;
a.download = sheetName;
a.click();
},
</script>
效果如下:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。