如何在Firebase / AngularJS中初始化日期元素以初始化模型

时间:2016-03-01 20:51:57

标签: javascript firebase angularfire

我需要操作每个$ firebasearray元素,以在日期中转换日期字段(保存为字符串'YYYYMMDD'),然后在相应标记的视图上显示:

<td width="7%"><input type="date" class="form-control"  ng-model="p.myDate"></td>

在这种情况下,上面的行是在数组中使用“p”元素的ng-repeat内部。我不能直接将包含我的日期的字符串(格式化为'YYYYMMDD')分配给日期字段。有必要将其转换为之前的日期。

怎么样?

1 个答案:

答案 0 :(得分:0)

将moment.js库添加到您的项目中。如果p.myDate是日期字符串,并且您想要一个日期对象,请尝试使用它。

for(var i = 0; i < $scope.yourArray.length; i++) {
   if(moment($scope.yourArray[i].myDate).isValid()) {
     //if you want to keep the date string
     //$scope.yourArray[i].myDateString = $scope.yourArray[i].myDate;
     $scope.yourArray[i].myDate = new Date(moment($scope.yourArray[i].myDate));
   }
   else {
     console.log("not a valid date", $scope.yourArray[i].myDate);
   }
}

如果YYYY,MM和DD之间没有空格,或者你应该重新格式化字符串。如果是这种情况,请告诉我,您需要帮助。