2012-12-09 80 views
0

遇到了AngularJS令人沮喪的問題。我所要做的就是加載一個json文件並使用ng:repeat將其顯示在模板中。過去我沒有任何問題,但由於某種原因,下面的代碼不起作用。有人可以看看並告訴我我錯過了什麼嗎?無法在AngularJS模板中遍歷數組

如果你看一下模板:

palette.html

{{palette}} 

<div ng-repeat="for color in palette">{{color}}</div> 

{{palette}}輸出[{"hex":"#6e4516"},{"hex":"#DDDABE"},{"hex":"#ECEAD9"},{"hex":"#98A349"},{"hex":"#798616"}]不過NG:重複什麼也不顯示。所以json被加載到範圍,但由於某種原因,我無法循環它。

這是我的主要js文件:

app.js

var App = angular.module('App', []). 
    config(function($routeProvider) 
    { 
     $routeProvider. 
      when('/palette', {templateUrl:'templates/palette.html', controller:PaletteController}). 
      otherwise({redirectTo:'/home'}) 
    }); 

function PaletteController($scope, $http){ 
    $http.get('palette.json').success(function(palette){ 
     $scope.palette = palette; 
    }); 
} 

,並從JSON文件中加載數據:

palette.json

[ 
    {"hex": "#6e4516"}, 
    {"hex": "#DDDABE"}, 
    {"hex": "#ECEAD9"}, 
    {"hex": "#98A349"}, 
    {"hex": "#798616"} 
] 

回答

5

你是ng-repeat表達式部分的代碼不正確。你需要這樣的事情:

<div ng-repeat="color in palette">{{color.hex}}</div> 
+0

這就是我在同一時間處理一個python項目所得到的結果。謝謝,這讓我瘋狂! – Kylee