angular2返回对象对象

时间:2018-02-01 10:49:42

标签: angular angular2-routing angular2-forms angular2-services

我正在尝试从数组中显示特定的用户名。我有一个用户名,用户名,用户ID和其他东西。我想打电话给<p>{{users$ | async).username</p>,但是当我这样做时,我什么也得不到。如果我只打电话给<p>{{users$}}</p> I get [object object]

component.ts我致电private users$: Observable<Users[]>;this.users$ = this._UserService.get();

 getUsers(): Observable<Users[]> {
    return this._store.select(state => state.Users.users);
  }

我做错了什么?

3 个答案:

答案 0 :(得分:0)

return this._store.select(state => state.Users.users);

要么你犯了语法错误,要么有几个用户。

尝试

{{ users$ | async)[0]?.username }}

使用 Elvis operator 以避免错误

答案 1 :(得分:0)

如果要显示特定用户名,则必须先从用户中选择用户。

pid = null会给你一个数组。

如果您知道要显示的用户的索引,请使用它:

users$ | async

(users$ | async)[index].username 会抓住{{users$}},因为它是[object object]

答案 2 :(得分:0)

以下是需要做的事情。

在您的组件上:

 this._UserService.getUser().subscribe(
          data => {
          console.log("User:", data);
            return this.user$ = data;
          },
          error => {
            console.log("Problem!!!", error);

          }
);

在你看来:

{{user$.username}}