【发布时间】:2021-11-13 09:34:43
【问题描述】:
我想返回新更新的对象。但是当我尝试使用管道链方法分配值时,它不起作用并返回初始值。
用链式函数分配和返回对象的更好方法是什么?
代码如下:
currentUser: UserInterface = {
accessToken: '',
userID: '',
name: '',
email: '',
picture: '',
pageList: [],
activePageID: 0,
activePage: {
name: '',
pageID: '',
instagramID: '',
categoryID: '',
tasks: [],
},
};
login(user: FacebookLoginInterface) {
this.generateLongUserToken(user.accessToken).pipe(
map((response) => {
this.currentUser.accessToken = response.access_token;
this.getUserPages(this.currentUser.accessToken).pipe(
map((response) => {
this.currentUser.pageList = response;
this.getInstagramBusinessAccount(
this.currentUser.pageList[0].id,
this.currentUser.accessToken,
).pipe(
map((response) => {
this.currentUser.activePage.instagramID =
response.instagram_business_account.id;
}),
);
}),
);
}),
);
return {
access_token: this.currentUser,
};
}
【问题讨论】:
-
究竟什么是“管道链式方法”。据我所知,这不是原生 javascript/typescript 概念。
-
“管道”也不是 NextJS 的概念。至少我不知道......你打电话给
this.generateLongUserToken(user.accessToken)。该方法返回什么? -
@Elias 我正在“nestjs”中开发。当我给出一个短期令牌时,它会返回一个新的长期令牌。我想要的是:有 2-3 种方法可以从 facebook api 返回值。我需要将它们分配给“currentUser”中的对应对象。但它不会等待他们完成并立即返回“currentUser”或在方法中分配对应项不起作用。
-
嗯,它返回的打字稿类型是什么?
-
如果
this.generateLongUserToken(user.accessToken)returnsUserInterface那接口上不应该有pipe函数吗?
标签: typescript rxjs nestjs