export class AppComponent {
posts: any[];
requestStream: any;
constructor(http: Http){
http.get('https://api.github.com/users')
.subscribe(
response => { this.posts = response.json(); });
}
}
和
<div *ngFor="let post of posts">
{{ post.login }}
</div>
{{ posts.length }}
视图显示一切正常 - 每个帖子的登录和帖子的长度(30),但控制台出错:
无法读取属性&#39;长度&#39;未定义的
另一个问题是,url(https://api.github.com/users)实际上包含的记录多于30(46)。那么为什么我只获得30条记录?
答案 0 :(得分:3)
错误发生在http
获取数据之前,您的帖子值未定义。要解决此问题,您需要在声明时初始化帖子。
posts = [];
或在您的模板中,您可以使用
{{ posts?.length }}