当前位置: 首页 > 面试题库 >

深度嵌套json到Angular 2的数组/ json渲染中的数组* ngFor

董砚
2023-03-14
问题内容

我想列出角度为2 * ngFor的以下json的状态和类型。家长属性也应呈现。

var test= {
  '192-168-0-16':{
    'ac395516-96d0-4533-8e0e-efbc68190e':{
      'state':  "none",
      'typ': "test"
    },
    'ac395516-96d0-4533-8e0e-efbc68190e':{
      'state':  "none",
      'typ':  "dummy"
    }
  },
  '222-21-12-12': {
    'ac395516-96d0-4533-8e0e-efbc68190e': {
      'state': "none",
      'typ': "none"
    }
  }

角度2:

<div *ngFor='#s of test'> <!-- also other properties should be visible -->
   <div *ngFor='#t of s'>
      {{t.state}} {{t.typ}}
   </div>
</div>

当然这是行不通的。没有很多数据转换就可以吗?我不确定如何获取json数组的数组。


问题答案:

您需要使用数组ngFor。如果要在此级别使用对象,则应考虑使用自定义管道。

基于此,我将以这种方式重构您的代码:

<div *ngFor='#s of (test | keyValues)'>
  <div *ngFor='#t of (s.value | keyValues)'>
   {{t.value.state}} {{t.value.typ}}
  </div>
</div>

使用以下管道:

@Pipe({name: 'keyValues'})
export class KeysPipe implements PipeTransform {
  transform(value, args:string[]) : any {
    let keys = [];
    for (let key in value) {
      keys.push({key: key, value: value[key]);
    }
    return keys;
  }
}


 类似资料:
  • 问题内容: 我有一个从数据库(JSON MySQL中的数据存储)检索数据的程序。 我设法得到对象。输出为: JSON对象: 我需要有关如何处理数据并将信息放入不同数组/对象的建议。例如 谢谢。 问题答案: 您可以使用Jackson Api来实现。 您必须创建与json对象相同的Pojo类(该类应具有“ attributes”,“ uuid”之类的成员)。 这是您必须使用的类 和代码 现在,您可以使

  • 如何使用jolt转换将平面JSON转换为嵌套JSON?我对JSON和jolt是新手。 输入: 预期输出: 编辑:我想在< code>SubFunds中添加一个新字段,但是新字段不在JSON文件中,它是计算字段,我可以按原样添加示例吗 并重命名字段:

  • 问题内容: 我映射了多个对象。 我如何嵌套一个循环,以便首先遍历对象,然后遍历(在此示例中)城市?谢谢! 我的没有嵌套外观的渲染函数如下所示: 城市对象示例: 问题答案: 您可以使用嵌套映射来映射内部子对象以及

  • 问题内容: 我有一个带有以下渲染的组件: policyLegend是一个对象数组,每个对象内都有一个“值”数组。 构建应用程序时,我没有收到任何错误,但是在组件页面上没有任何显示。我不确定我要去哪里错,请多多指教,谢谢。 问题答案: 这是因为您没有在policyLegend映射内返回任何内容。试试这个:

  • 问题内容: 嗨,我在解组嵌套的JSON数组时遇到问题。我应该创建什么结构?我想避免使用尽可能多的东西,但是我真的不知道在这种情况下是否有可能。 杰森,我想解组: 和我想用来解组的结构: 链接到示例:https : //play.golang.org/p/owuMptNrix 问题答案: 是的,答案只是一小部分: 好感谢你的问题,我发现这个错误的工具,我总是用它的Json操作一起去,它可以为你节省很

  • 我试图有一个键值对映射到一个数组,区分每个值作为一个类型使用jolt转换规范 输入json 尝试了这个规格