table-xlsx
Version:
Based on SheetJS encapsulation, the function of exporting files and parsing files to generate table data is realized
40 lines (39 loc) • 1.37 kB
TypeScript
import { ColumnType, SheetType } from '../interface';
/**
* 将以点拼接的扁平字符串对象,解析为具有深度的对象
* @param dotStrObj 点拼接的扁平化字符串对象
* @returns 具有深度的对象
*/
declare function parseDotStrObjToObj(dotStrObj: {
[x: string]: never;
}): {};
/**
* 将具有深度的对象扁平化,变成以点拼接的扁平字符串对象
* @param targetObj 具有深度的对象
* @returns 扁平化后,由点操作符拼接的对象
*/
declare function transformObjToDotStrObj(targetObj: {
[x: string]: never;
}): {};
/**
* 获取所有单元格数据
* @param sheet sheet 对象
* @returns 该 sheet 所有单元格数据
*/
declare function getSheetCells(sheet: {
[x: string]: any;
}): string[][];
/**
* 获取表头任意层级单元格合并后的表格内容解析
* @param sheet 一个 sheet 中所有单元格内容
* @param textKeyMap 表头中文与对应英文 key 之间的映射表
* @returns antdv 中的表格 column,dataSource,以及转化后的,直接传输给后端的 json 对象数组
*/
declare function getSheetHeaderAndData(sheet: SheetType[], textKeyMap: {
[x: string]: any;
}): {
headerColumns: ColumnType;
dataList: any;
dataSourceList: any;
};
export { parseDotStrObjToObj, transformObjToDotStrObj, getSheetCells, getSheetHeaderAndData };