【发布时间】:2015-11-21 10:28:23
【问题描述】:
我尝试从json file 获取数据。 这是JS代码:
var app = angular.module('ForecastApp', []);
console.log('in app');
//fetches weather data from service
var res ="";
app.factory('forecast', ['$http', function($http) {
$http.get('https://s3.amazonaws.com/codecademy-content/courses/ltp4/forecast-api/forecast.json')
.success(function(data) { console.log(data); res = data; })
.error(function(err) { console.log(err); res = err;});
return res;
}]);
//Save weather data into $scope.fiveDay
app.controller('MainController', ['$scope', 'forecast', function($scope, forecast) {
$scope.fiveDay = res;
console.log('in controller');
}]);
然后我在主 HTML 文件中运行:
<body ng-app="ForecastApp">
<div class="main" ng-controller="MainController">
...
<h1>{{ fiveDay.city_name }}</h1>
...
fiveDay.city_name 不返回任何内容,它只是显示空白。 fiveDay 的值应该是res,这是一个对象,对吧?我不明白为什么fiveDay.city_name 不是纽约。
【问题讨论】:
-
尝试创建 MainController 的引用,然后显示 city_name。比如
ng-controller="MainController as main"然后{{main.fiveDay.city_name}}
标签: javascript json angularjs api rest