2014-11-07 51 views
0

我有一个简单的数组,我想将其输出到列表中。当我打电话时,数组第一维的数组起作用,但第二维数组无法被检测到。我在这里做错了什么,或者我错过了什么?下面是我的代码:尝试输出多维数组时,AngularJS中的ng-repeat无法正常工作

Angular.js

angular.module('theme' , [ 
    ]).controller('sideController' , function($scope){ 

     $scope.menuName = [ 
      {'name': 'Header' , 'element' : [ 
       {'id' : 'template1' , 'template': 'wp-content/themes/dynamictheme/img/template/template1.png'} 
      ] 
     }]; 
    }) 
; 

HTML

<div id="slideout" ng-app="theme"> 
    <div id="slideMenu" ng-controller='sideController'> 
     <ul style="list-style-type: none;"> 

      <!--- Worked ---> 

      <li class="active" ng-repeat="menus in menuName"> 
       <h3><a class="menuItem" id="{{menus.name}}">{{menus.name}}</a></h3> 
      </li> 

      <!--- Didn't Work ---> 

      <li id="{{subMenu.id}}" class="draggable" ng-repeat="subMenu in menus.element"> 
       <img src="{{subMenu.template}}" width="200" /> 
      </li> 
     </ul> 
    </div> 
</div> 

回答

2

子菜单必须是内部的外ng-repeat(与div为了简单替换):

<div class="active" ng-repeat="menus in menuName"> 
    <h3><a class="menuItem" id="{{menus.name}}">{{menus.name}}</a></h3> 
    <div id="{{subMenu.id}}" class="draggable" ng-repeat="subMenu in menus.element"> 
    <img src="{{subMenu.template}}" width="200" /> 
    </div> 
</div> 

否则,范围内没有menus标识符。

+0

它按照你的说法工作,是的,菜单超出了范围。它帮助到我。谢谢! – 2014-11-07 01:44:10