Json array details show in three pages in angularj

2019-02-25 13:12发布

I have category array. there are more products. I need show categories in category page. when click on a category, I have to redirect the product page and show the necessary products. When click on a product, I have to redirect the product_details page and show the necessary product details.

category loaded to the category page, when click on that it will redirect the product page. But, I cant see products. And what are the errors of these controllers, and how to create "product_details.html", and "product.html" page also.

I have to show like this :

  • category page : term_id, name
  • product page : post_title, ID
  • product details page : post_title, post_date, post_author, ID

categorylist-product.json

{
"category": [{
    "term_id": "10",
    "name": "Arden Grange",
    "slug": "arden-grange",
    "products": [{
        "ID": "47",
        "post_title": "Arden Grange, Premium",
        "post_date": "2015-10-20 16:13:04",
        "post_author": "5"
    }, {
        "ID": "50",
        "post_title": "Arden Grange Puppy\/Junior Large Breed",
        "post_date": "2015-10-21 04:56:23",
        "post_author": "5"
    }, {
        "ID": "53",
        "post_title": "Arden Grange Weaning\/Puppy",
        "post_date": "2015-10-22 12:52:35",
        "post_author": "5"
    }]
}, {
    "term_id": "8",
    "name": "Menu 1",
    "slug": "menu-1",
    "products": [{
        "ID": "38",
        "post_title": "Home",
        "post_date": "2015-10-20 10:43:44",
        "post_author": "1"
    }, {
        "ID": "30",
        "post_title": "",
        "post_date": "2015-10-20 10:13:56",
        "post_author": "1"
    }, {
        "ID": "31",
        "post_title": "",
        "post_date": "2015-10-20 10:13:57",
        "post_author": "1"
    }]
}]
}

CategoryController.js

app.controller('CategoryController', ['$scope','category', function($scope, category) {

 category.success(function(data) {
     $scope.userslists = data;
});

}]);

ProductController.js

app.controller('ProductController', ['$scope', '$routeParams', 'category', function($scope, $routeParams, category,products) {

category.success(function(data) {
$scope.users = data.category[$routeParams.id];

});
}]);

app.js

var app = angular.module('LookApp', ['ionic','ngCordova','ngRoute']);

app.config(function($stateProvider, $urlRouterProvider,$routeProvider) {
$routeProvider

.when('/', {
controller: 'CategoryController',
templateUrl: 'views/category.html'
})

.when('/:id', {
controller: 'ProductController',
templateUrl: 'views/users.html'
})
 .when('/login/:friendId', {
controller: 'LoginController',
templateUrl: 'views/login.html'
})

.otherwise({
redirectTo: '/'

});

category.js (Service file)

app.factory('category', ['$http', function($http) {    

return $http.get('http://localhost/youtubewebservice/shop-categorylist-product.php')


       .success(function(data) { 
          return data; 
        }) 
        .error(function(err) { 
          return err; 
        }); 
}]);

1条回答
三岁会撩人
2楼-- · 2019-02-25 13:54

see you have put your data in $scope.userlists so when you call your data in html then you need to do like this
category page

<div ng-repeat="user in userslists">
Term ID : {{user.category.term_id}}
Name    : {{user.category.name}}
</div>

product page

<div ng-repeat="user in userslists">
Post Title : {{user.category.products.post_title}}
ID         : {{user.category.products.ID}}
</div>

Details page

<div ng-repeat="user in userslists">
Post Title : {{user.category.products.post_title}}
Post Date  : {{user.category.products.post_date}}
Post Author: {{user.category.products.post_author}}
ID         : {{user.category.products.ID}}
</div>
查看更多
登录 后发表回答