访问异步数组中的元素

ags*_*lid 5 angularjs firebase angularfire2 angular

我有一个angularjs2应用程序,它接收来自我的firebase服务的jsons列表.我想访问并显示列表的第一个元素.

这是我尝试过的

<h1>{{(chapters | async)?[0].title}}</h1>
Run Code Online (Sandbox Code Playgroud)

这给了我一个模板解析错误.

如何访问异步数组的第一个元素?

And*_*jea 5

我会这样做:

<h1>{{((chapters | async) || [])[0]?.title}}</h1>

这是一个更通用的解决方案,适用于任何索引,而不仅仅是第一个。


yur*_*zui 3

您可以像这样使用管道:

@Pipe({
  name: 'first'
})
export class First {
  transform(val, args) {
    if (val === null) return val;
    return val[0];
  }
}
Run Code Online (Sandbox Code Playgroud)

并在你的html中

<h1>{{ (chapters | async | first)?.title }}</h1>
Run Code Online (Sandbox Code Playgroud)

笨蛋的例子