是否可以使用pdfmake.js重复pdf文件中的表格行

时间:2016-03-16 12:18:06

标签: javascript angularjs jspdf pdfmake

是否可以使用pdfmake.min.js重复生成pdf格式的表格中的行? 我正在创建一个PDF文件。我需要根据我的api响应重复表的行,这是一个对象数组。

var dd = {content: [
                    {   
                     table: {
                        body: [
                               [ 'Col1', 'Col2', 'Col3'],
                               [ '1', '2', '3'],
                               [ '1', '2', '3']
                              ]
                            }
                    }
                   ]
         };

这是使用pdfmake创建表格的简单方法。 我的问题是我们可以使用任何替代方法(如ng-repeat)来重复表格行中的大数据吗? 我得到了生成pdf的最好方法是使用pdfmake。建议我如何重复表行。

1 个答案:

答案 0 :(得分:2)

所以我假设你正在创建你的pdf: pdfMake.createPdf(dd).open();

其中dd变量基本上只是一个简单的javascript对象。您可以使用数组以及任何方式扩展,例如:

var
  body = [],
  content = [],
  dd = {
    'content' : content 
  };

body.push(['col1', 'col2', 'col3']);

var secondRow = [];

// Push numbers 0, 1, 2
for (var i = 0; i < 3; i++) {
  secondRow.push("i is:" + i);
}

body.push(secondRow);

// ...
// Manipulate the 'body' any way you want.
// ...

// Lets push the manipulated body into the 'content'
// which is already inside the 'dd'.
content.push({
  'table' : {
    'body' : body
  }
});

// Now with all the manipulated data, create the pdf.
pdfMake.createPdf(dd).open();

所以重点是,以你想要的方式操纵这个js对象,当你完成所有设置并完成后,调用createPdf

如果您将我的脚本粘贴到pdfmake-playground,您可以看到我的意思。