javascript - 无法将日历数据保存到 firebase 中

标签 javascript firebase-realtime-database ionic3 angular5 angular-calendar

我正在我的应用程序中创建大厅预订功能。在此应用程序中,我想保存大厅预订的开始日期和时间以及结束日期和时间。当用户预订一整天的大厅时,应更改日期颜色。

这里我可以从日历中获取数据,但它没有插入到 firebase 数据库中。唯一插入的数据是 UIDallDay 字段。我可以做什么来解决这个问题?

这是我的代码。

addEvent() {
  let modal = this.modalCtrl.create('EventModalPage', {
    selectedDay: this.selectedDay
  });
  modal.present();
  modal.onDidDismiss(data => {
    if (data) {
      let eventData = data;
      eventData.startTime = new Date(data.startTime);
      eventData.endTime = new Date(data.endTime);

      let events = [];
      events.push(eventData);
      // this.eventSource = [];
      setTimeout(() => {
        this.eventSource = events;
        console.log(this.eventSource);
        let startTime = this.eventSource['0'].startTime;
        let endTime = this.eventSource['0'].endTime;
        let allDay = this.eventSource['0'].allDay;

        console.log(startTime);
        let currentUserUid = this.fire.auth.currentUser.uid;
        firebase.database().ref('bookingHall/').push({
          uID: currentUserUid,
          startTime: startTime,
          endTime: endTime,
          allDay: allDay,

        });
      });
    }
  });
}

最佳答案

Firebase 实时数据库仅存储 JSON 类型。您的 startTimeendTime 是 JavaScript Date 对象,它们不是有效的 JSON 类型。要允许存储日期,请存储时间戳(自纪元以来的毫秒数)或值的可排序字符串表示形式 (20181101T034027)。

另请参阅:

关于javascript - 无法将日历数据保存到 firebase 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53097710/

相关文章:

android - 在 Ionic v3.7.0 上更改 AndroidManifest.xml

angular - 如何处理( ionic 选择)确定按钮?

cordova - 如何使用 ionic 键盘插件

javascript - 卡住下一个和上一个事件

javascript - 调度 `retrieveSportsDetails` 函数,但我不确定如何编写 `if` 条件

javascript - Javascript/Jquery 验证有问题吗?

ios - Swift:使用 firebase 时 TableView 的索引超出范围错误

javascript - 为什么要将 .scss 导入 .js?

java - 我可以在不发生事件的情况下将数据写入 firebase 吗?

firebase - 如何根据 key 对 firebase 控制台中的节点进行排序