繁体   English   中英

如何在angularjs重复指令中获取json数据?

[英]how to fetch json data in angularjs repeat directive?

我想知道,我应该如何分别从ng-repeat和子菜单中的json文件中获取主菜单

以下是我的文件

menu.json

{"data":
    {
        "main menu":
        {
            "menu1":
            [
                {"id":1, "name":"level 2", "body":"this is a body."},
                {"id":2, "name":"something new", "body":"this is a body new."}
            ],
            "menu2":
            [
                {"id":1, "name":"cobat_something", "body":"this is a body of cobat."},
                {"id":2, "name":"cobat_something new", "body":"this is a body of cobat new."}
            ]
        }
    }
}

这是我的js文件

app.js

(function(){
    var app = angular.module('myApp', []);

    app.controller('mainController', ['$http', function($http){
        var mainCtrl = this;
        $http.get('menu.json').success(function(data){
            mainCtrl.menus = data;
        });
    }]);

})();

这是我的html文件

的index.html

    <body ng-controller="mainController as mainCtrl">
    <ul>
      <li ng-repeat="menu in mainCtrl.menus">
        {{menu}}
        <ul>
          <li ng-repeat="subMenu in mainCtrl.menus">
            {{subMenu.main menu}}
          </li>
        </ul>
      </li>
    </ul>

    </body>

尝试如下所示列出菜单名称。

<body ng-app="myApp" ng-controller="mainController as mainCtrl">
  <ul>
    <li ng-repeat="menus in mainCtrl.menus">
      <ul>
        <li ng-repeat="menu in menus">
          {{menu.name}}
        </li>
      </ul>
    </li>
  </ul>
</body>

角度代码:

(function() {
  var app = angular.module('myApp', []);

  app.controller('mainController', ['$http', function($http) {
    var mainCtrl = this;
    $http.get('menu.json').success(function(response) {
      mainCtrl.menus = response.data["main menu"];
    });
  }]);

})();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM