打字稿 – 访问’this’Inside Promise
发布时间:2020-12-17 06:48:28 所属栏目:安全 来源:网络整理
导读:在下面的typescript函数中,’this’不会解析为EmailValidator的实例.如何更正此功能,以便它解析为正确的EmailVaildator实例,以便我可以访问_registerServices? class EmailValidator { constructor(private _registerServices: RegisterServices) { } isAva
在下面的typescript函数中,’this’不会解析为EmailValidator的实例.如何更正此功能,以便它解析为正确的EmailVaildator实例,以便我可以访问_registerServices?
class EmailValidator { constructor(private _registerServices: RegisterServices) { } isAvailable(c: AbstractControl): Promise<ValidationResult> { let q = new Promise((resolve,reject) => { this._registerServices.emailIsAvailable(antiForgeryToken(),c.value) .then(result => { // Need to actually check the result. resolve({ "emailtaken": true }) },error => { // Need to communicate the server error? Probably not. resolve({ "servererror": true }) }); }); return q; } } 解决方法
你输了这个,因为你在这里传递isAvailableEmail作为“原始”函数:
email: ['',Validators.required,this._emailValidator.isAvailableEmail] 您可以通过将其绑定到此来解决此问题(使用胖箭头): email: ['',(control) => { this._emailValidator.isAvailableEmail(control) } ] (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |