0

我目前正在使用json2xls将我的查询数据以 json 格式导出到 xlsx 文件中,如下所示:

var xls = tool.json2xls(data, {order:["NAME", "OWNER_EMAIL", "GROUP", "BRAND", "DOC_CENTER_URL", "LIBRARYURL", "TOTAL_VIEWS"], 
                              fieldMap: {NAME: "Name", OWNER_EMAIL: "Owner Email", GROUP: "Group", BRAND: "Brand", DOC_CENTER_URL: "Doc Center URL",
                              LIBRARYURL: "Library URL", TOTAL_VIEWS: "Total Views"}}); 

我已经在使用选项字段fieldMap来编辑列名,效果很好,但我希望能够编辑每列的宽度,以便在打开 xlsx 时将其格式化。在 json2xls 文档中,它说可用的选项是:

  • style:样式 xml 文件,参见https://github.com/functionscope/Node-Excel-Export
  • 字段:包含字段配置的数组或映射:
    • 数组:要导出的字段名称列表,按此顺序
    • 对象:要导出的字段名称和这些字段的类型的映射。支持的类型是“数字”、“字符串”、“布尔”
4

1 回答 1

0

您提供的链接中的文档已经有了答案:

var conf ={};
conf.stylesXmlFile = "styles.xml";
conf.name = "mysheet";
//here you define columns data and properties:
conf.cols = [
 {caption:'string',
  type:'string',
  beforeCellWrite:function(row, cellData){
    return cellData.toUpperCase();},
  //and specifically for column width:
  width:28.7109375}... 

请注意,根据文档,列宽单位是字符,这是 Excel 的列宽方式。(例如 20 是 20 个字符的宽度,取决于字体大小和样式)

于 2021-05-31T17:13:23.963 回答