OverView
最近研究了一下js中一个导出数据到Excel的模块。发现国内竟然没有人翻译。而小学弟学妹们听见导出Excel什么的,更是闻虎色变。其实没那么难。今天香蕉君就翻译一下。原文地址传送门。注意下面都是我这个英语渣的翻译,如果发现了错误欢迎指出。
翻译之前再啰嗦几句
安装node使用npm下载依赖。(真不知道我在担心些什么)
使用 excel-export
在传入到execute
方法前设置好‘设置’对象的值。如果你想生成多个“工作表”(译者加:就是Excel下方那个可以切换的地方也有叫做sheet的),那么建立一个对象数组即可。或者你可以直接传对象就会在一个“工作表中”
使用name
属性可以给这个“工作表”命名。
使用clos
是一个给纵列定义属性的数组。纵列的定义需要caption
名称和type
类型两个必须字段,和宽度可选字段。宽度是字符的。[1]属性中还可是定义一个叫做beforeCellWrite
的回调函数。这函数有row(行),cell data(单元数据),option object(配置对象)(一会再说)三个形参。返回值就是填充这个单元的真正数据。(译者加:明显这是为了方便预处理)。支持的类型有:string(字符串),date(日期),bool(逻辑)和 number(数值)类型。
使用rows
表示要被导出的数据。它是数组的数组。它的每个数组长度要和clos一致。
表格的样式是可选的。然而如果你使用表格样式,那么一个有效的样式xml文件是必须的。一个简单的方法获取这样的文件的方法是‘unzip’[2]一个包含你想要样式的Excel并把样式文件复制出来使用。使用stylesXmlFile
属性赋值来使用。了解更多样式请百度。呵呵。
eOpt
(配置对象)在刚才说的回调函数中包含行和列的信息。eOpt.styleIndex
应该是一个从0开的的所以,表示选择传入样式文件中表示单元格样式的标签。eOpt.cellType
默认情况下是和之前定义好的type是保持一致的。然而在特定的应用场景下你也可以修改他。
[1] 原文这里是 The unit for width property is character。但是看代码这里似乎是一个数字类型。
[2] ‘unzip’是什么操作?解压?这里不知道怎么翻译。也不知道怎么从其中导出样式文件。如果知道的希望告知,谢谢。
示例代码
|
|
鸣谢
最后再次感谢这个模块的作者。functionscope。谢谢你的工作,真的很棒。
finally,thanks to the author functionscope.greate work,Really Inspiring!
我将一直的无知与迷惑,我是黄油香蕉君,再见。