属性 then does not exist on type void ,打字稿错误
property then does not exist on type void , A typescript error
代码:
reset(){
let alert = this.AlertCtrl.create({
buttons :['ok']
});
this.userservice.passwordreset(this.email).then((res: any)=>{
if(res.success){
alert.setTitle('Email sent');
alert.setSubTitle('please follow the instructions in the email to reset the password')
}
else{
alert.setTitle('failed');
}
})
}
错误:
property then does not exist on type void , A typescript error
有人可以帮助我更正此代码片段,以便 'then' 功能正常工作吗
干杯!
这里的问题是 passwordreset()
函数,
它应该是这样的:
passwordreset(): Promise<any> {
// this should return a promise
// make sure , you are returning promise from here
return this.http.get(url)
.toPromise()
.then(response => response.json().data)
.catch(this.handleError);
}
You were returning the promise inside promise function , but not
returning it from passwordreset()
,
请查看您的代码和更新后的代码,您会有所了解
您的代码:
passwordreset(email)
{
var promise = new Promise((resolve,reject)=>{
firebase.auth().sendPasswordResetEmail(email).then(()=>{
resolve({success :true});
})
.catch((err)=>{
reject(err);
})
return promise;
});
}
更新代码:
passwordreset(email): Promise<any>
{
return new Promise((resolve,reject)=>{
firebase.auth().sendPasswordResetEmail(email).then(()=>{
resolve({success :true});
})
.catch((err)=>{
reject(err);
});
});
}
我用这个处理
singlesender(data){
return new Promise((resolve,reject)=>{
this.userService.getAccessToken().then(accesstokendata=>{
this.accesstoken=accesstokendata;
console.log(this.accesstoken);
console.log("hello");
console.log("hello2");
let dataToSend = new HttpParams()
.set("senderidforme", data.senderidforme)
let header = new HttpHeaders()
.set("Content-type", "application/x-www-form-urlencoded")
.set("Authorization", "Bearer "+this.accesstoken);
return this.get(SERVER_URL+"web/v2/user-message-unreadcountsignle", dataToSend, header);
})
.catch(error=>{
})
});
}
代码:
reset(){
let alert = this.AlertCtrl.create({
buttons :['ok']
});
this.userservice.passwordreset(this.email).then((res: any)=>{
if(res.success){
alert.setTitle('Email sent');
alert.setSubTitle('please follow the instructions in the email to reset the password')
}
else{
alert.setTitle('failed');
}
})
}
错误:
property then does not exist on type void , A typescript error
有人可以帮助我更正此代码片段,以便 'then' 功能正常工作吗 干杯!
这里的问题是 passwordreset()
函数,
它应该是这样的:
passwordreset(): Promise<any> {
// this should return a promise
// make sure , you are returning promise from here
return this.http.get(url)
.toPromise()
.then(response => response.json().data)
.catch(this.handleError);
}
You were returning the promise inside promise function , but not returning it from
passwordreset()
,
请查看您的代码和更新后的代码,您会有所了解
您的代码:
passwordreset(email)
{
var promise = new Promise((resolve,reject)=>{
firebase.auth().sendPasswordResetEmail(email).then(()=>{
resolve({success :true});
})
.catch((err)=>{
reject(err);
})
return promise;
});
}
更新代码:
passwordreset(email): Promise<any>
{
return new Promise((resolve,reject)=>{
firebase.auth().sendPasswordResetEmail(email).then(()=>{
resolve({success :true});
})
.catch((err)=>{
reject(err);
});
});
}
我用这个处理
singlesender(data){
return new Promise((resolve,reject)=>{
this.userService.getAccessToken().then(accesstokendata=>{
this.accesstoken=accesstokendata;
console.log(this.accesstoken);
console.log("hello");
console.log("hello2");
let dataToSend = new HttpParams()
.set("senderidforme", data.senderidforme)
let header = new HttpHeaders()
.set("Content-type", "application/x-www-form-urlencoded")
.set("Authorization", "Bearer "+this.accesstoken);
return this.get(SERVER_URL+"web/v2/user-message-unreadcountsignle", dataToSend, header);
})
.catch(error=>{
})
});
}