0

我想在 pdfkit 中创建一个带有 orderitems 的 PDF 文档。

所以我创建了一个 pdf 文档,其中包含一些信息,例如买家和发件人,如下所示:

doc = new pdf({autoFirstPage: false});
doc.addPage({
    margin: 50
});
doc.text(shipTo.name, 50);
doc.moveDown(0.5);
doc.text(shipTo.address + " " + shipTo.number + shipTo.addition ? shipTo.addition : "");
doc.moveDown(0.3);
doc.text(shipTo.zip)
doc.moveDown(0.3);
doc.text(shipTo.city);
doc.moveDown(0.3);
doc.text(shipTo.country);

但现在我想显示一些有关订购产品的信息。我已经通过 order.items 创建了一个循环,它也在产品集合中查看,但在 de PDF 中没有显示任何内容,但在控制台中我看到了我需要打印的信息。

for(var i = 0; i < order.items.length; i++){
    var item = order.items[i];
    Product.findOne({_id: order.items[i].productId}).exec(function(err, product){
        console.log(item.name, item.quantity, product.eanCode);
        doc.moveDown();
        doc.text(item.name, 50);
        doc.moveUp();
        doc.text(product.eanCode, 300);
        doc.moveUp();
        doc.text(item.quantity, 500);
    })
}

有人知道如何让它工作吗?

4

1 回答 1

0

您能否显示您的 order.items 中的内容,因为我认为您只需要您在 order.items 中的键名。

显示您的数组以进行一些说明

例如:-

var arr = ["foo","moo","bar","xyz","abc"];

   var margin = 150;
   var serialNo = 1;
     for(var i=0; i<arr.length ; i++){
      doc.text(serialNo++,50,margin)
      doc.text(arr[i],100,margin)
      margin = margin + 20;
  }

这是一个您可以参考的快速示例.. :)

于 2017-03-23T09:40:35.627 回答