当我尝试在其中调用“customer”值时,OnComplete()
函数中的fineuploader存在问题。我正在使用Angular和TypeScript作为前端。
“客户”值未定义,因为在onComplete()
块中找不到它(没有自动完成)。那么如何调用我的importCustomers
函数呢?任何的想法?
提前感谢您的帮助。
答案 0 :(得分:2)
this
范围
ngAfterViewInit(){
var self = this; //<-- assign this before setting the new Uploader class
this.uploader = new Uploader({
....
self.customer.importCustomers(name); //<-- use the assigned self here
}
答案 1 :(得分:0)
使用箭头功能,因为have no binding of this
:
onComplete = (id, name, responseJSON) => {
if(responseJSON.success) {
console.log("Upload done")
this.customer.importCustomers(name)
}
}
或者,您可以在函数参数上传递this
:
onComplete(id, name, responseJSON, this) {
let _this = this;
if(responseJSON.success) {
console.log("Upload done")
_this.customer.importCustomers(name)
}
}