Angular2如何处理非数组的服务

Angular2如何处理非数组的服务,angular,Angular,我准备了与此类似的服务: [{ "Id": 1, "productName": "Cart", }, { "Id": 2, "productName": "Hammer", }] 我可以在视图中使用*ngFor并浏览所有项目,它工作正常,但是 仅当我有一个项目(不是数组)时

我准备了与此类似的服务:

            [{
                "Id": 1,
                "productName": "Cart",
            },
            {
                "Id": 2,
                "productName": "Hammer",
            }]
我可以在视图中使用*ngFor并浏览所有项目,它工作正常,但是

  • 仅当我有一个项目(不是数组)时,是否有*ngFor的等效项

  • 对于阵列,我尝试这样做(它不起作用):

    
    
    
    
    
    

  • 谢谢你的建议。

    关于#1) 你可以这么做

    <div>{{item.value}}</div>
    etc...
    
    {{item.value}
    等
    
    对于#2)

    1)您可以通过以下方式逐个显示属性:

    {{product.Id}} {{product.productName}}
    
    如果异步加载数据,请使用Elvis运算符:

    {{product?.Id}} {{product?.productName}}
    
    可以使用自定义管道迭代对象的属性名称:

    <div *ngFor="let keyValue of product | keyValue">
     {{keyValue.key}} {{keyValue.value}}
    </div>
    
    
    {{keyValue.key}{{keyValue.value}}
    
    见这个问题:

    2) 您可以尝试以下方法:

    <div *ngFor="let item of items; let i = index; let last = last">
    
       <div *ngIF="last">
      `
      </div>`
      `
    </div>` 
    
    
    `
    `
    `
    ` 
    
    谢谢,但我试过了1),但没用。我可能遗漏了什么,不客气!也许猫王接线员就是你要找的。。。我更新了我的答案。
    <div *ngFor="let keyValue of product | keyValue">
     {{keyValue.key}} {{keyValue.value}}
    </div>
    
    <div *ngFor="let item of items; let i = index; let last = last">
    
       <div *ngIF="last">
      `
      </div>`
      `
    </div>`