在es6中,我需要承诺在完成后返回真或假
这是我的尝试,但它会返回一个承诺,我需要它是真或假
return this.isUserAuthenticated()
.then(() => this.checkIfTeacherProfileExists());
返回部分必须为true或false。
这是其中一个回报:
isUserAuthenticated = (): Promise<any> => {
return new Promise((resolve, reject) => {
this.authService.checkIfLoggedIn().then((isAuthUser: boolean) => {
resolve(true);
});
});
}
答案 0 :(得分:1)
您的回复是持有true
或false
的承诺。所以你要做的就是链接另一个.then()
来保存布尔值。
return this.isUserAuthenticated()
.then(() => this.checkIfTeacherProfileExists())
.then(v => console.log(v)); // true or false
关于你的评论,请参阅@ FelixKling的评论 - 你不能这样做,这不是承诺的工作方式。