我正在研究應用程序以讀取JSON文件。
目前我能夠檢索和閱讀JSON文件,但問題是何時在JSON中選擇數據。
錯誤「無法讀取未定義的屬性‘長’」
下面是我的代碼。
Services.js
.factory("mainData", function($http, $log, $q) {
var chartData;
return {
all: function() {
var d = $q.defer();
$http({ method: 'GET',
url: 'http://localhost:8080/aZolla/getGlazCharts.do'})
.success(function (data, status, header, config) {
d.resolve(data);
})
.error(function (data, status, header, config) {
$log.warn(data, status, header, config);
});
chartData = d.promise;
return d.promise;
},
get: function(chartID) {
for (var i = 0; i < chartData.length; i++) {
if (chartData[i].id === parseInt(chartID)) {
return chartData[i];
}
}
return null;
}
};
});
Controller.js
.controller("ChartsListsCtrl", function($scope, mainData) {
mainData.all().then(function(data){
$scope.chartLists = data;
}
)
.controller('ChartsCtrl', function($scope, $stateParams, mainData) {
$scope.chart = mainData.get($stateParams.chartId);
})
您加載兩個控制器同時放?這看起來像一個asyncronic問題。 –
檢查getData函數執行期間chartData是否包含預期數據。 –