Angularjs ng视图重定向到另一页时ng重复不工作

Angularjs ng视图重定向到另一页时ng重复不工作,angularjs,Angularjs,当我在产品页面中调用{{jeans.title}时,它不起作用。 my app.js代码:- <!-- Modules --> var app = angular.module('GalleryApp', ['ngRoute']); <!-- routeProvider --> app.config(function ($routeProvider) { $routeProvider .when('/', { controller:

当我在产品页面中调用{{jeans.title}时,它不起作用。

my app.js代码:-

<!-- Modules -->

var app = angular.module('GalleryApp', ['ngRoute']);


<!-- routeProvider -->

app.config(function ($routeProvider) { 
  $routeProvider
    .when('/', { 
        controller: 'HomeController',
        templateUrl: 'views/home.html'
    })
    .when('/products/:id', {
        controller: 'ProductsController',
        templateUrl:'views/product.html'
    })
    .otherwise({ redirectTo: '/' }); 
});



<!-- Controllers -->

app.controller('HomeController', ['$scope', 'products', function($scope, products) {
    products.success(function(data1) {
        $scope.products = data1;

    });
}]);

app.controller('ProductsController', ['$scope', 'products', '$routeParams', function($scope, products, $routeParams) {
    products.success(function(data2) {
        jeans = data2[$routeParams.id];
    });

}]);


<!-- services -->

app.factory('products', ['$http', function($http) {
  return $http.get('products.json')
         .success(function(data) {
           return data;
         });
}]);

当我在产品页面中调用{jeans.title}时,它不起作用。

ProductsController

    jeans = data2[$routeParams.id];
您缺少
$scope.
。应该是:

    $scope.jeans = data2[$routeParams.id];
此外,您似乎希望访问JSON对象中的子对象
mens[0]。jeans

    $scope.jeans = data2.mens[0].jeans[$routeParams.id];

谢谢你的信息@Manikandan。是的,正如您所说,我正在尝试访问JSON中的子对象mens.jeans。但我仍然面临着同样的问题。我已经给出了每一段代码。如果可能的话,您可以通过Jsfiddle或其他一些在线编辑器与我分享代码的更正版本。因此它对我更有用。@karthickravindranath如果您通过JSFIDLE共享您的非工作代码,我会尝试查找其他问题。因为我无法将代码的每一部分都放进去。我已经上传到谷歌硬盘了@我的查询@karthickravindranath第34行的leems PFA,您仍然缺少$scope。而且,第40行没有任何意义。由于使用forEach将数据推送到数组中,因此不再需要该行。然而,我的回答中的行应该可以做到这一点(不需要forEach)。。。尝试在之后添加
console.log($scope.jeans)
以查看它是否设置正确。可能是设置正确,但UI没有按预期更新。我使用了
products.success(函数(data2){$scope.jeans=[];angular.forEach($scope.products,函数(mens){angular.forEach(mens.jeans,函数(jeans){$scope.jeans.push(jeans)})console.log($scope.jeans);})
{
  "mens": [
    {
      "name": "mens fasion",
      "jeans": [
        {
          "title": "Slim fit",
          "model": "slim 2527",
          "brand": "Tommy Hilfiger",
          "img": "images/mens/jeans/product_1.jpg",
          "price": "2000",
          "offer": "10"
        },
        {
          "title": "Parallel",
          "model": "Parallel-1575",
          "brand": "Denim",
          "img": "images/mens/jeans/product_2.jpg",
          "price": "2500",
          "offer": "15"
        },
        {
          "title": "cargos",
          "model": "cargos 2876",
          "brand": "Lee Cooper",
          "img": "images/mens/jeans/product_3.jpg",
          "price": "3000",
          "offer": "20"
        }
      ]
    }
  ]
}
    jeans = data2[$routeParams.id];
    $scope.jeans = data2[$routeParams.id];
    $scope.jeans = data2.mens[0].jeans[$routeParams.id];