如何在ng-repeat中获取不同的数据? - AngularJS

时间:2017-06-05 15:44:46

标签: angularjs

我使用AngularJS并创建了一个网络应用程序。

我不知道如何从一个特定链接获取值。

我有一个管理页面,我有所有用户,我使用ng-repeat

获取它们
<div ng-repeat="user in allusers">

但是我已经创建了例如用户级别的路由,并且已将它们添加到http://mylink.com/user_level/john@doe.com - (那个例子,所以我将通过用户电子邮件获得用户级别)

1 个答案:

答案 0 :(得分:0)

推荐的方法是使用检索用户的服务,在用户对象本身中发送用户级别。

但是,如果这不是一个选项,你必须进行单独的服务调用以获得用户的级别,这就是你要这样做的方式。

  function getUserLevels(users) {
    for(var i=0; i<users.length; i++) {
      getUserLevelForUser(users[i]);
    }
  }

  function getUserLevelForUser(user) {
    $http.get(BASE_URL + '/' + user.email)
      .then(function (response) {
          user.userLevel = response.data.userLevel;
        });
  }

  getUserLevels($scope.users);

由于我无法访问您的API,因此我创建了一个调用Open Movie Database API的plunker应用程序。在这个演示中,我将取代电影导演,而不是用户的级别。此外,我将使用电影名称,而不是在网址中使用用户的电子邮件。

请参阅working plunker here