未启动管道后,nodejs流完成回调

斯蒂芬·雅科文科(Stepan Yakovenko)

pdf文件保存后,我需要做一些整理工作:

docx2pdf(doc, function (pdf) {
    console.log("saving file");
    var pdfFile = fs.createWriteStream("./test2.pdf");
    pdf.on('finish',function(){
        console.log("Finished");
        process.exit();
    }).pipe(pdfFile);
    pdf.end();
    console.log("After save");
}, true, true);

但是第二个嵌套函数中的代码永远不会启动。pdf是pdfkit库中的对象。我该如何解决?

UPD:这种方法也不起作用:

docx2pdf(doc, function (pdf) {
    console.log("saving file");
    var pdfFile = fs.createWriteStream("./test2.pdf");
    pdfFile.on('finish',function(){
        console.log("Finished");
        process.exit();
    });
    pdf.pipe(pdfFile);
    //pdf.end();
    console.log("After save");
}, true, true);
标准-

您需要finish在管道对象上捕获事件,而不是在pdf对象上捕获事件

console.log("saving file");

pdf
  .pipe( fs.createWriteStream("./test2.pdf") )
  .on( 'finish', function(){
    console.log("Finished");
  });
pdf.end();

console.log("After save");

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章