我有一个Array within Items。我想在PDFMake这样的表中重复它们。

table: {
      multiple pages
      headerRows: 2,
      widths: ['auto', 100, 200, 'auto', 'auto', 'auto'],

      body: [
        ['Nr.', 'Name', 'Beschreibung', 'Preis', 'Anzahl', 'MwSt(%)'],
        [bill.billItems[i].itemNumber, bill.billItems[i].name, bill.billItems[i].description, bill.billItems[i].price, bill.billItems[i].quantity, bill.billItems[i].vat],
            ]
   }


它是否提供了*ngFor中的ngRepeatPDFMake这样的简单方式,还是for(i=0; i<array.length; i++)中的其他方式?

最佳答案

您可以在docdefinition中使用javascript变量。
尝试以下方法:

// playground requires you to assign document definition to a variable called dd

var rows = [];
rows.push(['Nr.', 'Name', 'Beschreibung', 'Preis', 'Anzahl', 'MwSt(%)']);

for(var i of [1,2,3,4]) {
    rows.push(['#.'+i, 'xx', 'xx', 'xx', 'xx', 'xx']);
}

var dd = {
    content: {
        table: {
                widths: ['*', 100, 200, '*', '*', '*'],
                body: rows
            }
    }

}


您可以直接在pdfmake playground中复制/粘贴此代码以查看实时渲染的PDF。

09-19 07:56