Javascript PDFmake表动态数据

Javascript PDFmake表动态数据,javascript,typescript,pdfmake,Javascript,Typescript,Pdfmake,我正在使用PDFmake创建pdf文件,我想在表格中添加动态数据,但正文显示为空 当我打印[0]时,这一个可以工作,但我有很多动态数据 getData(installation, request) { const phases = { layout: { hLineWidth: function(i, node) { return 0.45; },

我正在使用PDFmake创建pdf文件,我想在表格中添加动态数据,但正文显示为空

当我打印[0]时,这一个可以工作,但我有很多动态数据

 getData(installation, request) {
          const phases = {
            layout: {
              hLineWidth: function(i, node) {
                return 0.45;
              },
              vLineWidth: function(i, node) {
                return 0.45;
              }
            },
            table: {
              dontBreakRows: true,
              widths: ["30%", "10%", "60%"],
              body: [
                [

                  {
                    text: installation.phases[0].text,
                    style: "cell"
                  },
                  { text: installation.phases[0].status},
                  {
                    text: this.getFeedback(installation.phases[0]),
                    style: "commentCell"
                  }
                ],
              ]
            }
          };
          console.log(phases);
          return phases;
      }
但如果我使用这个,它会创建一个空的表体

  getData(installation, request) {
installation.phase.forEach(value =>{
          const phases = {
            layout: {
              hLineWidth: function(i, node) {
                return 0.45;
              },
              vLineWidth: function(i, node) {
                return 0.45;
              }
            },
            table: {
              dontBreakRows: true,
              widths: ["30%", "10%", "60%"],
              body: [
                [

                  {
                    text: data.text,
                    style: "cell"
                  },
                  { text: data.status},
                  {
                    text: this.getFeedback(data),
                    style: "commentCell"
                  }
                ],
              ]
            }
          };
          console.log(phases);
          return phases;
});
}

这里可能出了什么问题?我已经试过了,但找不到解决办法。我不确定这是否是你的目标

我已经重写了您的代码,并为PDF创建了JSON结构(const phases),然后用包含行的JSON数组动态填充table.body。我没有尝试运行它,因此可能存在一些编译错误。希望这有帮助

getData(installation, request) {
  const phases = {
    layout: {
      hLineWidth: function(i, node) {
        return 0.45;
      },
      vLineWidth: function(i, node) {
       return 0.45;
      }
    },
    table: {
     dontBreakRows: true,
     widths: ["30%", "10%", "60%"],
     body: []
    }
   }

   installation.phases.forEach(value => {
    phases.table.body.push([
     { text: value.text, style: 'cell' },
     { text: value.status, },
     { text: this.getFeedback(value), style: 'commentCell' }
    ])
   })

  console.log(phases)
  return phases
}

您将表体的文本设置为data.text、data.status和this.getFeedback(数据),但这些“数据”来自哪里?