Angular 的 Tesseract 回调 - 'this' 未定义

Tesseract callback with Angular - 'this' is undefined

我正在尝试使用 Angular 2 进行 Tesseract 工作。

Tesseract.recognize(file)
    .progress(function (p) { console.log('progress', p) })
    .then(function (result) {
      this.resultText = result.text;
    })
}

问题在行:this.resultText = result.text;。 我收到错误 '无法读取未定义的 属性 'resultText''

我不确定为什么 这是未定义的

使用箭头函数语法在回调中正确绑定this

Tesseract.recognize(file)
    .progress((p) => { console.log('progress', p) })
    .then((result) => {
      this.resultText = result.text;
    })
}

了解更多信息 检查这个 video

您反驳的问题是词法上的 this reference。