Angular ng repeat值未定义

Angular ng repeat值未定义,angular,typescript,Angular,Typescript,我试图从JSON对象中获取某些元素以显示在我的html中,但我无法在我的应用程序中这样做。 我在做什么: 在我的服务中从steamAPI获取JSON(成功,我可以在console.log中看到整个JSON) 将JSON从服务传递到我的组件(成功,如果*ngIF=items失败,浏览器将不显示任何内容) 我试图从JSON中获取market\u hash\u name和icon\u url,代码(失败,ng repeat有效,但浏览器显示错误类型ERROR:“\u co.value未定义”) {

我试图从JSON对象中获取某些元素以显示在我的html中,但我无法在我的应用程序中这样做。 我在做什么:

  • 在我的服务中从steamAPI获取JSON(成功,我可以在console.log中看到整个JSON)

  • 将JSON从服务传递到我的组件(成功,如果
    *ngIF=items
    失败,浏览器将不显示任何内容)

  • 我试图从JSON中获取
    market\u hash\u name
    icon\u url
    ,代码
  • (失败,ng repeat有效,但浏览器显示错误类型ERROR:“\u co.value未定义”)

    {{value.market\u hash\u name}添加到您的列表中

    这失败了

  • 我在w3schools中做了一个try-it示例来尝试ng repeat函数。 我将JSON复制到示例中(必须将其缩短到合适的长度),它可以正常工作。

    该示例适用于w3,但当我将相同的代码粘贴到我的项目中(我在某个点上粘贴了整个内容)时,它失败了,出现了“ERROR TypeError:“\u co.value is undefined”错误。问题似乎出在我的项目中,但我找不到

    如何解决此问题

    我的代码:

    从'@angular/core'导入{Component,OnInit};
    从“../../api.service”导入{ApiService};
    @组成部分({
    选择器:“应用项目列表”,
    templateUrl:“./itemlist.component.html”,
    样式URL:['./itemlist.component.scss']
    })
    导出类ItemlistComponent实现OnInit{
    构造函数(私有api:ApiService){}
    项目:对象;
    恩戈尼尼特(){
    this.api.getItems().subscribe(数据=>{
    此项=数据;
    console.log(this.items);
    }
    );
    }
    }
    用户
    
    
  • {{value.market\u hash\u name}添加到您的列表中


  • 没有带角度的
    ,您需要使用
    ngFor

     <li *ngFor="let (key,value) of items.rgDescriptions"> 
        <img src="http://cdn.steamcommunity.com/economy/image/{{value.icon_url}}" class="img-responsive" />
        <p>{{ value.market_hash_name }} <button>Add to your list</button></p>
      </li>
    
    
    {{value.market\u hash\u name}添加到您的列表中


    我尝试使用ngFor,但它不适用于对象,只适用于数组。我需要将json转换为数组吗?是的,你需要使用ngFor over array,在这种情况下,chang(key,value)就是你的名字,然后访问properties。为了让它工作,我需要添加管道(因为ngFor不支持对象)
    这对我很有效,感谢您的帮助:)的可能副本