如何使用默认用户模型实现带FireLoop的resetPassword?
问题描述:
所以在我的/xyz.component.ts中,我从/user.ts调用了resetPassword方法。在LoopBack文档中它说:如何使用默认用户模型实现带FireLoop的resetPassword?
调用User.resetPassword最终会发出resetPasswordRequest事件并创建一个临时访问令牌。
但是,如何捕捉事件?如果我尝试应用.on('resetPasswordRequest',()=> {....}),它会告诉我UserApi没有'on'。
/xyz.component.ts
private resetPassword(){
this.userApi.resetPassword({email: this.userName}).subscribe((data : any)=>{
console.log(data);
},(error : any) => {
this.error = error;
}
);
console.log("error: " , this.error);
}
/user.ts
public resetPassword(options: any, customHeaders?: Function): Observable<any> {
let _method: string = "POST";
let _url: string = LoopBackConfig.getPath() + "/" + LoopBackConfig.getApiVersion() +
"/Users/reset";
let _routeParams: any = {};
let _postBody: any = {
options: options
};
let _urlParams: any = {};
let result = this.request(_method, _url, _routeParams, _urlParams, _postBody, null, customHeaders);
return result;
}
答
MROALI非常善良的帮我解决了我在GitHub上的问题。 所以,你需要怎样做才能赶上“resetPasswordRequest”事件在编辑您的用户模型的构造(或extendend用户模型,如果你不使用默认的),像这样:
constructor(public model: any) {
model.on('resetPasswordRequest', function (info:any) {
console.log("do something");
})
}