Javascript Can';无法在视图中获取对象属性

Javascript Can';无法在视图中获取对象属性,javascript,angularjs,angular,ionic-framework,ionic2,Javascript,Angularjs,Angular,Ionic Framework,Ionic2,在html视图中显示对象详细信息时遇到问题(使用ionic2)。下面的命令在cart.ts文件中输出正确的值(输出胡萝卜) 但是,当我尝试在视图中输出它时,它将不再允许我查看页面。我假设是因为一个错误 <h2>{{cart.vegetable}}</h2> 答复: 我跟着下面的帖子走,但不得不把回执放在电话之前 public getPosts$(category, limit) { return this.cartService.getPosts(category,

在html视图中显示对象详细信息时遇到问题(使用ionic2)。下面的命令在cart.ts文件中输出正确的值(输出胡萝卜)

但是,当我尝试在视图中输出它时,它将不再允许我查看页面。我假设是因为一个错误

<h2>{{cart.vegetable}}</h2>
答复: 我跟着下面的帖子走,但不得不把回执放在电话之前

public getPosts$(category, limit) {
  return this.cartService.getPosts(category, limit).map(response => {
       this.cart = response.data.children;
  };
}

这是因为您正在执行一个异步API调用,所以在使用它之前应该检查它是否可用。此外,您还可以通过
async
管道将API响应直接用作可观察的响应

<h2>{{(cart | async)?.vegetable}}</h2>
以及:

以及:


当我在ngOnInit中调用该函数时,我得到“property subscribe不存在于void上”。@Matt签出您的服务代码时,您似乎没有从this.cartService.getPosts方法返回可观察到的内容。我仍在学习,并遵循了教程。下面是getPosts getPosts(category,limit){返回this.http.get(this.baseUrl+'/'+category+'/top.json?limit='+limit.map(res=>res.json());}这是我的错,我更正了上面的代码,我错过了一个返回语句谢谢你的帮助,非常感谢。我似乎无法运行if(我得到了相同的错误)。在我接下来的教程中,他们引入了一个数组并在其中循环,效果很好。然而,当我把一个对象带到视图中时,我遇到了这些问题。我发布了新问题。再次感谢你
 cart:any;

  ngOnInit(){
    this.getPosts(this.category, this.limit);
  }

  getPosts(category, limit){
    this.cartService.getPosts(category, limit).subscribe(response => {
      this.cart = response.data.children;
      console.log( this.cart.vegetable);
    });
  }
public getPosts$(category, limit) {
  return this.cartService.getPosts(category, limit).map(response => {
       this.cart = response.data.children;
  };
}
<h2>{{(cart | async)?.vegetable}}</h2>
public getPosts$(category, limit) {
  return this.cartService.getPosts(category, limit).map(response => {
   return response && response.data && response.data.children;
  };
}
ngOnInit() {
 this.getPosts$(this.category, this.limit).subscribe(cart => {
  this.cart = cart;
 }
}
<h2 *ngIf="cart>{{cart.vegetable}}</h2>