Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ionic App/AngularJS/Cordova-未定义工厂中的API响应_Angularjs_Ionic - Fatal编程技术网

Ionic App/AngularJS/Cordova-未定义工厂中的API响应

Ionic App/AngularJS/Cordova-未定义工厂中的API响应,angularjs,ionic,Angularjs,Ionic,我试图为API天气预报响应创建一个工厂,但当我试图用数组中的项目填充列表时,它表示未定义 这是工厂 .factory('FullForecastService', function($q, $timeout, $http){ $http.get('http://api.wunderground.com/------------------------------------------------.json') .success(function(data) {

我试图为API天气预报响应创建一个工厂,但当我试图用数组中的项目填充列表时,它表示未定义

这是工厂

.factory('FullForecastService', function($q, $timeout, $http){
    $http.get('http://api.wunderground.com/------------------------------------------------.json')
        .success(function(data) {
            forecastfuture = [];
            console.log(data);
            for(i=0; i<36; i++) {
                var day = data.hourly_forecast[i].FCTTIME.pretty;
                var maxtemp = data.hourly_forecast[i].temp.metric;
                var mintemp = data.hourly_forecast[i].dewpoint.metric;
                var feelslike = data.hourly_forecast[i].feelslike.metric;
                var humidity = data.hourly_forecast[i].humidity;
                var windspd = data.hourly_forecast[i].wspd.metric;
                var winddir = data.hourly_forecast[i].wdir.dir;
                var sky = data.hourly_forecast[i].condition;
                var precip = data.hourly_forecast[i].qpf.metric;
                var snow = data.hourly_forecast[i].snow.metric;
                var icon = data.hourly_forecast[i].icon_url;
               forecastfuture.push({
                    id: i,
                    day: day,
                    maxtemp: maxtemp,
                    mintemp: mintemp,
                    feelslike: feelslike,
                    humidity: humidity,
                    windspd: windspd,
                    winddir: winddir,
                    sky: sky,
                    precip: precip,
                    snow: snow,
                    icon: icon});

            }
        }
    )

    return {
        all: function(){
            var deferred = $q.defer();
            $timeout(function(){
                deferred.resolve(forecastfuture);
            }, 1000);
            return deferred.promise;
        },
        allSync : function(){
            return forecastfuture;
        },
        get : function(singledayId){
            for(var i= 0, l=forecastfuture.length; i < l; i++){
                    if(forecastfuture[i].id == singledayId){
                        return forecastfuture[i];
                    }
            }
        }
    }})
此外,在单一预测控制器中,行中的单一ID不起作用:

.controller('SingleForecastCtrl', function($scope, $stateParams, FullForecastService){
    $scope.singleforecast = FullForecastService.get($stateParams.singledayId);


})
模板: 名单


{{singleday.day}
单一预测

<ion-view view-title="Weather Forecast">
  <ion-content class="background">
    <h1>Forecast Day:</h1>
    <ion-list>
      <ion-item>
        {{forecastfuture.day}}
      </ion-item>
    </ion-list>
  </ion-content>
</ion-view>

预测日:
{{forecastfuture.day}
我得到的错误是:

请求时,数据不在那里,因此返回未定义的数据。首先使用状态的resolve属性获取数据。你有任何解决方案,我正在寻找相机绑定,但它给我相机的错误。。。
<ion-nav-view name="forecast"></ion-nav-view>
<ion-view view-title="36 Hr Weather Forecast">
    <ion-content class="background">
        <ion-list>
            <ion-item ng-repeat="singleday in forecastfuture" href="#/app/forecast/{{singleday.id}}">
                <img src={{singleday.icon}} />
                {{singleday.day}}
            </ion-item>
    </ion-content>
</ion-view>
<ion-view view-title="Weather Forecast">
  <ion-content class="background">
    <h1>Forecast Day:</h1>
    <ion-list>
      <ion-item>
        {{forecastfuture.day}}
      </ion-item>
    </ion-list>
  </ion-content>
</ion-view>