Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 仅显示与用户关联的内容_Angularjs - Fatal编程技术网

Angularjs 仅显示与用户关联的内容

Angularjs 仅显示与用户关联的内容,angularjs,Angularjs,我有一个服务可以提出请求 .factory('movieService', ['$http', function($http) { return { loadMovies: function() { return $http.get('/movies_users.json'); } }; }]) 这是JSON输出,是连接两个表的结果。用户表和电影表。如您所见,用户与一部或多部电影关联 [ {"id":1, "email":"peter@peter.n

我有一个服务可以提出请求

.factory('movieService', ['$http', function($http) {
  return {
    loadMovies: function() {
      return $http.get('/movies_users.json');
    }
  };
}])
这是JSON输出,是连接两个表的结果。用户表和电影表。如您所见,用户与一部或多部电影关联

[
  {"id":1,
  "email":"peter@peter.nl",
    "movies":[
      {
        "id":4,
        "title":"Creed",
        movie_id":"312221"
      },
      {
      "id":5,
        "title":"Star Wars: Episode VII - The Force Awakens",
        "movie_id":"140607"
      }
    ]
  },

  {"id":2,
  "email":"jan@jan.com",
    "movies":[
      {
        "id":4,
        "title":"Creed",
        movie_id":"312221"
      }
    ]
  }
]
我的控制器中有这个功能

movieService.loadMovies().then(function(response) {
  $scope.movies = response.data;
});
这会将服务中的数据存储到电影范围中

如果我这样做

"ng-repeat" => "movie in movies"

ng repeat显示所有用户添加的所有电影。如何在视图中仅显示与当前用户关联的电影?

可在快速谷歌搜索中找到:



编辑:看起来您实际上有一个用户列表,因此您可以对用户上的ngrepeat进行筛选,然后在电影上有一个嵌套的ngrepeat(未筛选,因为它们连接到用户)。但是,根据你的应用程序实际需要的工作方式,你可以在它返回时过滤数据,然后扔掉你不需要的用户。这就引出了一个问题,您有权访问服务器端代码吗?如果是这样,您可以在那里进行筛选,而不返回与不同用户关联的数据,这似乎是您想要的-如果有帮助,请告诉我。 请注意,在
电影id“
上有一个额外的
,这肯定没有帮助

angular.module('myApp',[])
.controller('ctrl',函数($scope){
$scope.users=[
{“id”:1,
“电子邮件”:peter@peter.nl",
“电影”:[
{
“id”:4,
“头衔”:“信条”,
电影编号:“312221”
},
{
“id”:5,
“标题”:“星球大战:第七集-原力觉醒”,
“电影id”:“140607”
}
]
},
{“id”:2,
“电子邮件”:jan@jan.com",
“电影”:[
{
“id”:4,
“头衔”:“信条”,
电影编号:“312221”
}
]
}
];
});

{{user.email}
{{movie.title}
用户2的电影
{{movie.title}

您的代码不会显示包含所有电影的电影对象,因此您应该使用其中一个仅包含一个用户电影的对象。显示更多代码?我试图澄清这个问题。我的问题是,当我使用
ng repeat
时,它会显示所有用户的所有电影。我正在寻找一种只显示当前用户添加的电影的方法。
<div ng-repeat="movie in movies | filter {email:'user@email.com'}">