我正在构建某种在线课程库,现在我正在模拟DB数据为JSON
文件。我试图做的是在ng-repeat
中显示用户获得的课程。我有两个JSON
文件,一个用于用户,另一个用于课程,我想知道如何交叉引用这两个文件以显示我想要的数据。对两个JSON文件中的数据使用ng-repeat
我有存储在两个变量的数据形成两个JSON
文件,规定如下:从两个JSON文件(courses.json和users.json)
//load user data
$http.get("users.json")
.then(function mySuccess(response){
$scope.appUsers = response.data;
}, function myError(response){
console.log("Error loading user data!");
});
//load course data
$http.get("courses.json")
.then(function mySuccess(response){
$scope.appCourses = response.data;
}, function myError(response){
console.log("Error loading course data!");
});
的数据看起来是这样的:
users.json
[{
"username": "user1",
"password": "123456",
"name": "Joe",
"courses": [{"id": 1}, {"id": 2}, {"id": 3}, {"id": 4}, {"id": 5}, {"id": 6}, {"id": 7}, {"id": 8}]
}, {
"username": "user2",
"password": "654321",
"name": "Jane",
"courses": [{"id": 2}, {"id": 4}, {"id": 5}, {"id": 7}]
}]
courses.json
[{
"id": 1,
"name": "Web Design",
"image": "images/portfolio/p1.jpg",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam et faucibus metus, ac efficitur felis.",
"price": "35€"
}, {
"id": 2,
"name": "Photoshop Level 1",
"image": "images/portfolio/p2.jpg",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam et faucibus metus, ac efficitur felis.",
"price": "35€"
}, {
"id": 3,
"name": "Game Design",
"image": "images/portfolio/p3.jpg",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam et faucibus metus, ac efficitur felis.",
"price": "35€"
}, {
"id": 4,
"name": "Photography Level 1",
"image": "images/portfolio/p4.jpg",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam et faucibus metus, ac efficitur felis.",
"price": "35€"
}, {
"id": 5,
"name": "Web Design Masters",
"image": "images/portfolio/p5.jpg",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam et faucibus metus, ac efficitur felis.",
"price": "35€"
}, {
"id": 6,
"name": "Photoshop Level 2",
"image": "images/portfolio/p6.jpg",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam et faucibus metus, ac efficitur felis.",
"price": "35€"
}, {
"id": 7,
"name": "Game Design Masters",
"image": "images/portfolio/p7.jpg",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam et faucibus metus, ac efficitur felis.",
"price": "35€"
}, {
"id": 8,
"name": "Photography Level 2",
"image": "images/portfolio/p1.jpg",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam et faucibus metus, ac efficitur felis.",
"price": "35€"
}]
我有这个ng-repeat
标签与ng-if
模拟“USER1”已登录:
<div ng-repeat="course in appCourses" ng-if="appUsers[0].username == 'user1'">...</div>
现在我缺少的是什么我应该做的,只显示USER1有课程。
谢谢。
是'users.json'东西你生成/可更改? – Cerbrus
是的,我自己写的,现在是所有的虚拟数据。 – Strife09
而不是'[{“id”:1},{“id”:2} ...]',只需使用一个ID数组:'[1,2,...]',这将使它成为一个已经很容易了。 – Cerbrus