在ng-click

时间:2016-02-23 11:10:45

标签: angularjs multidimensional-array angularjs-directive angularjs-scope angularjs-ng-repeat

我尝试了什么: -

  <ul id="leftMenu">
            <li ng-repeat="(networkKey, networkValue) in menuValue track by $index">
               <a href="#" ng-click="divVerticalMenuClickEventHandler($event, networkValue, 'NetworkLevel', '')">
                    Network {{$index+1}}<span> </span></a>
                <ul>
                    <li ng-repeat="(deviceAccessPointKey, deviceAccessPointValue) in deviceAccessPointItems track by $index">
                      <a href="#" ng-click="divVerticalMenuClickEventHandler($event, networkValue +'/' +deviceAccessPointValue.name , 'DeviceLevel', deviceAccessPointValue.ref)">{{capitalizeFirstLetter(deviceAccessPointValue.name)}}<span> </span></a>
                         <div ng-repeat="(objectkey, objectValue) in objectListItems">
                            <ul class="" style="">
                             <li ng-repeat="(objectListKey, objectListValue) in objectValue track by $index | orderBy:sortMenu">
                               <a href="#"  ng-click="divVerticalMenuClickEventHandler($event, objectListValue, 'ObjectListLevel', '')">{{GetUpdatedObjectname(objectListValue)}}<span> </span>            
                               </a>
                            </li>
                          </ul>
                        </div>
                    </li>
                </ul>
            </li>
        </ul>

Controller动态绑定此菜单。

 $scope.menuItems = payload.data;

在li项目上单击,我调用REST API并绑定li项目的子项。但它将相同的li项目绑定到所有父项目。 什么是问题: - 菜单示例: -

enter image description here

问题在于,如果我点击“Network1”,那么 它会将Network1和Network2的子项与相同的数据绑定,而设备也会发生相同的情况。如果我单击Devices,它会绑定Devices对象以及Devices2对象。

请让我知道解决方案.. 在此先感谢

1 个答案:

答案 0 :(得分:0)

我为整个菜单创建了一个JSON对象,并在菜单和子菜单的单击上更新了该对象。我将更新这个菜单JSON对象,用于所有REST调用它的子项,并且只会使用此对象。