在.then()函数中尝试angular.forEach时出错

时间:2017-06-11 23:11:42

标签: php mysql angularjs datepicker

我从我的php服务器-mysql后端正确地从我的angularJs工厂收到了这个很好的json数组。这是一些有开始日期的rendez-vous:

   [{"id":"1","title":"Loi Travail","infos":null,
     "adresse":"12 avenue des lis 78013  paris",
     "criticite":"4","fichiers":null,
     "start":"2017-06-11T22:37:59.012Z"},
    {"id":"17","title":"jjtyjyjt","infos":"jytjjyjyj",
     "adresse":"tjtyjjyj","criticite":"7","fichiers":"",
     "start":"2017-06-11T22:37:59.012Z"}]

问题是angular-material-datetimepicker无法识别开始日期,因为它是一个字符串,所以我需要做一个循环来添加new Date(),以转换我的每个“开始”元素

所以,我做了这个简短的代码:

rdvFactory.get_rdvs().then(function(data){ 
    console.log(data.data);

    angular.forEach(data.data),function(value,index){
        console.log(value.start); 
    }
}).finally(function(){}) 

BUt我的console.log什么都没显示,而是我有这个奇怪的错误:

  

TypeError:b未定义       Trace de la pile:       Q因子@ https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js:7:481       @ http://localhost/rdvjuristes/app.js:61:2       H /< @ https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js:134:467       $消化@ https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js:145:417       $适用@ https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js:149:111       升@ https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js:102:87       WG / HTTPS://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js:107:489        可能是未处理的拒绝:{}

你认为它与$ q有关吗?也许有另一种方式来转换日期?

非常感谢你有一个想法,祝​​你有个美好的一天。

仅供参考,如果我输入此信息,那么日历会很好地显示会合(请查看新的日期()):

$scope.events = [{"id":"1","title":"Loi Travail","infos":null,
                  "adresse":"12 avenue des lis 78013  paris",
                  "criticite":"4","fichiers":null,
                  "start":new Date("2017-06-11T22:37:59.012Z")}] 

1 个答案:

答案 0 :(得分:0)

根据 docs ,更改

发件人

 angular.forEach(data.data),function(value,index){
        console.log(value.start); 
}

 angular.forEach(data.data,function(value,index){
        console.log(value.start); 
 });