Angular fire - 如何在数据库中添加输入的日期和小时?

时间:2015-07-05 11:30:46

标签: javascript angularjs ionic-framework firebase angularfire

我使用Ionic和AngularFire来制作我的CRUD应用程序,但我有一个(新的)问题: 日期和时间不记录在数据库中。我很难用我的代码的当前结构实现getTime()(它是否很难成为新手,特别是当大多数Angularfire教程已经过时时......)...我感谢大家提前帮助我! (这是我先前提问的副本,我希望有人可以帮我调试我的代码)

这是我的HTML:

<form ng-submit="submitEvent(event)">
      <label class="item item-input item-stacked-label">
        <span class="input-label"><i class="fa fa-pencil"></i> Nom de l'événement</span>
        <input type="text" ng-model="event.nameid">
      </label>
      <label class="item item-input item-stacked-label">
        <span class="input-label"><i class="icon ion-ios-information"></i> Description</span>
        <br><textarea ng-model="event.descriptionid"></textarea>
      </label>
      <label class="item item-input item-stacked-label">
        <span class="input-label"><i class="fa fa-location-arrow"></i> Adresse</span>
        <input type="text" ng-model="event.addressid">
      </label>
<label class="item item-input item-stacked-label">
    <span class="input-label"><i class="fa fa-calendar"></i> Date</span>
    <input type="date" ng-model="event.dateid">
  </label>
  <label class="item item-input item-stacked-label">
    <span class="input-label"><i class="fa fa-clock-o"></i> Heure</span>
    <input type="time" placeholder="HH:mm:ss" ng-model="event.hourid">
  </label>

      <button class="button" type="submit" value="Add Event" id="success-btn-create"><i class="fa fa-arrow-right"></i></button></form>

这是我的Controller JS(仅限submitEvent):

$scope.submitEvent = function(event) {

var eventRef = new Firebase("https://myApp.firebaseio.com/Events");
Event.add(event).then(function (data){ 
  $scope.event = [{nameid: null, descriptionid: null, adressid: null, cpid: null, townid: null, dateid: null, hourid: null}];
 });

  }

我的服务JS:

myApp.factory("Event", ["$firebaseArray", function($firebaseArray) {
var eventRef = new Firebase('https://myApp.firebaseio.com/Events/');
    return {
         get: function (){
                return $firebaseArray(eventRef);
              }
            ,
        add: function (event){
          var eventInfo = $firebaseArray(eventRef);
          return eventInfo.$add(event);
              }
       }
}]);

全部谢谢!

1 个答案:

答案 0 :(得分:1)

event.dateid = new Date(event.dateid).toJSON();
return eventInfo.$add(event);

在get函数内部,这里

$scope.event = [{nameid: null, descriptionid: null, adressid: null, cpid: null, townid: null, dateid: null, hourid: null}]; 

为什么将这些设置为null?我认为它应该设置为保存后保存的值?: