如何解决有什么方法可以直接返回字符串值的跟随方法?
我编写了一个函数来获取“用户”值。但我需要知道,我可以直接采用字符串值并将其分配给变量吗?
还有第二个问题,如果我做不到,该如何从Observable中获取价值?目前,我将其分配给局部变量并在方法中使用。实际上,这种方式是正确的,我需要知道如何删除返回类型。
readonly id$: Observable<string> = this.store.select(selectUser)
.pipe(
mergeMap((currentUser: CurrentUser) => {
this.localid = currentUser.id; //assign local variable
return currentUser.id; //retrn value
}),shareReplayUntil(this.destroySub));
解决方法
是的,您可以将值分配给函数内部的局部/全局变量。
如果我理解得很好,user = models.OneToOneField(User,on_delete=models.CASCADE,related_name='user_profile')
get_object_or_404(Profile,pk=request.user.user_profile.pk)
是一个可观察的对象。它取决于this.store.select
后面的Observable类型,但是您可以订阅Observable以获得值。不需要this.store.select
和pipe
。
示例:
mergeMap
使用您的代码:
this.store.select(selectUser).subscribe(
(currentUser: CurrentUser) => { // <-- here you will get the new value
this.localid = currentUser.id; // <-- and you can assign it
}
)
一个Observable是异步的,它不会立即返回一个值。要获得该值,您必须订阅Observable,后者将向所有订阅者发出新值。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。