为什么我不能像这样访问json对象数组?

时间:2015-09-10 20:06:17

标签: json angularjs

这是因为我做的测试因为我的原始json文件发生了变化,现在我必须更改代码,但我不太熟悉json,这是文件json文件http://www.jsoneditoronline.org/?id=96cf940bda26a2e9ddff786f3aacf1d8

<!-- this works --> 
                            <table>
                            <tr  ng-repeat="menuOpcion in menu[0]">
                            <td ng-repeat="opc in menuOpcion.indicadores">
                            {{opc.tipo}}
                            </td>
                            </tr>
                            </table>


                            <br><br><br>
                        <!--nothing below works --> 

                            <table>
                            <tr >
                            <td ng-repeat="menuOpcion in menu[0].indicadores">
                            {{menuOpcion.tipo}}
                            </td>
                            </tr>
                            </table>

                            <table>
                            <tr >
                            <td ng-repeat="menuOpcion in menu[0]">
                            {{menuOpcion.indicadores.tipo}}
                            </td>
                            </tr>
                            </table>

这会给我带来麻烦,因为我在其他需要迭代的json文件中有更多嵌套对象,所以有一种方法可以直接获得 indicadores 级别吗?

我也尝试了这个:

                            <table>
                            <tr >
                            <td ng-repeat="menuOpcion in menu[0].indicadores[0]">
                            {{menuOpcion.tipo}}
                            </td>
                            </tr>
                            </table>

1 个答案:

答案 0 :(得分:1)

JSON结构:

array menu [
    0 => 
        object {
            object opciones{
                array indicadores [
                    n => 
                        object indicadore {
                            string tipo
                        }
                ]
            }
        }
)

所以,试试:

<table ng-repeat="menuOpcion in menu[0]">
    <tr ng-repeat="indicadore in menuOpcion.opciones.indicadores">
        <td>
            {{indicadore.tipo}}
        </td>
    </tr>
</table>

或者:

<table>
    <tr ng-repeat="menuOpcion in menu[0]">
        <td ng-repeat="indicadore in menuOpcion.opciones.indicadores">
            {{indicadore.tipo}}
        </td>
    </tr>
</table>

..基于你想要达到的目标。