Angularjs 如何在angular js中迭代json对象?
我有一个json对象,我需要在angular中迭代该对象。我会告诉你我的问题。我有一个按钮。单击该按钮,用户可以选择多个元素。我举个例子('a','b','c',等等)。当用户选择“a”并关闭弹出窗口时,我需要显示此结果 选择“a”时的预期结果Angularjs 如何在angular js中迭代json对象?,angularjs,angularjs-directive,angularjs-ng-repeat,ionic-framework,ionic,Angularjs,Angularjs Directive,Angularjs Ng Repeat,Ionic Framework,Ionic,我有一个json对象,我需要在angular中迭代该对象。我会告诉你我的问题。我有一个按钮。单击该按钮,用户可以选择多个元素。我举个例子('a','b','c',等等)。当用户选择“a”并关闭弹出窗口时,我需要显示此结果 选择“a”时的预期结果 A // header A S //names A p 当用户从showTableData中选择“A”时,其搜索将显示标题下方的名称: "A": [ { "name":"A S"}, { "name":"A p"} ], 当用户选择“A
A // header
A S //names
A p
当用户从showTableData中选择“A”时,其搜索将显示标题下方的名称:
"A": [
{ "name":"A S"},
{ "name":"A p"}
],
当用户选择“A”和“B”时,预期结果:
A B // headers
A S B BS
A P B Bp
以此类推
实际上,如果用户选择任何东西“A”,“B”,“C”…等等,我都可以打印标题。我不知道如何打印标题下面的对应名称
这是我的密码:
我认为最简单的解决方案就是添加另一个div并在showTableData变量上迭代,但只能通过选择的键
<div ng-repeat="d in data">
<div class="col" ng-show="d.checked">{{d.name}}</div>
<div class="col" ng-show="d.checked"
ng-repeat="nameObject in showTableData[d.name]">
{{nameObject.name}}
</div>
</div>
.请尝试使用A[0]。名称或A[0]是否可以使用代码penIt,因为showTableData变量包含带有字母“A”、“B”的对象,但其他字母都是小写的。我修复了示例,请立即尝试。%)谢谢你回答“有些东西是可以重构的”是什么意思。你能详细说明一下吗?你能告诉我怎么做吗?是的,当然。我更新了我的答案。我的意思是使用ng重复和过滤。
$scope.showTableData={
"A": [
{ "name":"A S"},
{ "name":"A p"}
],
"B": [
{ "name":"B BS"},
{ "name":"B Bp"}
],
"c": [
{ "name":"c c"},
{ "name":"c c"}
],
"d": [
{ "name":"d dS"},
{ "name":"d dp"}
],
"E":[
{ "name":"E ES"},
{ "name":"E Ep"}
]
};
<div ng-repeat="d in data">
<div class="col" ng-show="d.checked">{{d.name}}</div>
<div class="col" ng-show="d.checked"
ng-repeat="nameObject in showTableData[d.name]">
{{nameObject.name}}
</div>
</div>
<div ng-repeat="d in data | filter:{checked: true}">
<div class="col">{{d.name}}</div>
<div class="col" ng-repeat="nameObject in showTableData[d.name]">
{{nameObject.name}}
</div>
</div>