TesserActJS错误:UnhandledPromiseRejectionWarning:TypeError:无法读取null的属性“发送”

时间:2019-09-21 08:10:35

标签: javascript node.js error-handling

使用Tesseract NPM软件包。并得到以下错误:

  

UnhandledPromiseRejectionWarning:TypeError:无法读取null的属性“发送”

我知道UnhandledPromiseRejectionWarning是一个承诺,它会引发错误并且没有.catch()方法。这是我的代码(也使用了npm sharp软件包)

function processText() {

    sharp('./screenshot.png')
        .extract({ left: 40, top: 585, width: 405, height: 70 })
        .resize({ height: 210 })
        .toFile(`./text.png`, function (err) {
            worker
                .recognize('./text.png')
                .then(({ text }) => {
                    console.log(text) 
                    worker.terminate();
                })

}

我尝试过:

  1. 将其全部包装在try catch块中
  2. 在代码中的.catch()方法之后绑定一个.then()方法

这不能解决错误。有什么建议可以消除此错误?

1 个答案:

答案 0 :(得分:0)

    try returning sharp

    eg:
    function processText() {

        return sharp('./screenshot.png')
          ...
          ...
    }

If you are into ES6 format, check this out

const semiTransparentRedPng = await sharp({
  create: {
    width: 48,
    height: 48,
    channels: 4,
    background: { r: 255, g: 0, b: 0, alpha: 0.5 }
  }
})
  .png()
  .toBuffer();

Reference: https://www.npmjs.com/package/sharp