2016-10-25 27 views
0
<body> 
<div data-ng-controller="itemController as store"> 
    <ul class="list-group"> 
     <li class="list-group-item" data-ng-repeat="product in store.product.names"> 
      <h3>{{store.product.name}} 
       <em class="pull-right">{{store.product.price}}</em> 
     </h3> 
     </li> 
    </ul> 
</div> 
<script type="text/javascript"> 
(function() { 
    var app = angular.module('store', []); 
    app.controller('itemController', function($scope) { 
     $scope.product = gem; 
    }); 

    var gem = [{ 
     name: 'Item1', 
     price: 15 
    }, { 
     name: 'Item2', 
     price: 16 
    }, { 
     name: 'Item3', 
     price: 17 
    }, { 
     name: 'Item4', 
     price: 18 
    }, { 
     name: 'Item5', 
     price: 19 
    }]; 
})(); 
</script> 
<!-- <script src="jquery.js"></script>--> 
<script src="app.js"></script> 

我的角碼有什麼不對?

在我的瀏覽器中查看的頁面,並檢查控制檯頁面後,我收到此錯誤信息

錯誤:[NG:AREQ]參數「itemController」不是一個函數,得到了不確定。

+0

你應該定義變量在使用或分配它。 –

回答

-1

你不應該使用與NG-重複product.names。

嘗試下面的代碼:

<body> 
<div data-ng-controller="itemController as store"> 
    <ul class="list-group"> 
     <li class="list-group-item" data-ng-repeat="product in products"> 
      <h3>{{product.name}} 
       {{product.price}} 
     </h3> 
     </li> 
    </ul> 
</div> 
<script type="text/javascript"> 
(function() { 
    var app = angular.module('store', []); 
    app.controller('itemController', function($scope) { 
     $scope.products = gem; 
    }); 

    var gem = [{ 
     name: 'Item1', 
     price: 15 
    }, { 
     name: 'Item2', 
     price: 16 
    }, { 
     name: 'Item3', 
     price: 17 
    }, { 
     name: 'Item4', 
     price: 18 
    }, { 
     name: 'Item5', 
     price: 19 
    }]; 
})(); 
</script> 
<!-- <script src="jquery.js"></script>--> 
<script src="app.js"></script> 

0

更改您的NG-重複這樣的,

<div data-ng-controller="itemController"> 
    <ul class="list-group"> 
     <li class="list-group-item" data-ng-repeat="product in products"> 
      <h3>{{product.product.name}} 
       <em class="pull-right">{{product.price}}</em> 
     </h3> 
     </li> 
    </ul> 
</div> 

控制器:

var app = angular.module('store', []); 
    app.controller('itemController', function($scope) { 
    var gem = [{ 
     name: 'Item1', 
     price: 15 
    }, { 
     name: 'Item2', 
     price: 16 
    }, { 
     name: 'Item3', 
     price: 17 
    }, { 
     name: 'Item4', 
     price: 18 
    }, { 
     name: 'Item5', 
     price: 19 
    }]; 
     $scope.products = gem; 
    }); 
}) 

DEMO

0

這是你的工作代碼 - In thin plunker

HTML代碼:

<div data-ng-controller="itemController"> 
     <ul class="list-group"> 
      <li class="list-group-item" data-ng-repeat="item in product"> 
       <h3>{{item.name}} 
       <em class="pull-right">{{item.price}}</em> 
      </h3> 
      </li> 
     </ul> 
    </div> 

在控制器:

//代碼放在這裏

(function(){ 
    var app = angular.module('store', []); 
    app.controller('itemController', function($scope) { 
     $scope.hello = 'hello'; 
     var gem = [{ 
      name: 'Item1', 
      price: 15 
     }, { 
      name: 'Item2', 
      price: 16 
     }, { 
      name: 'Item3', 
      price: 17 
     }, { 
      name: 'Item4', 
      price: 18 
     }, { 
      name: 'Item5', 
      price: 19 
     }]; 
     $scope.product = gem; 
    }); 
})();