Возникли проблемы с добавлением массива дат в firestore

Работа над приложением, которое принимает выбор пользователя в календаре. Я беру выбранный диапазон дат и добавляю их в массив. Массив хранится в датах. У меня проблема с загрузкой массива в firestore. При загрузке this.state.markedDates я получаю сообщение об ошибке.

первая функция получает диапазоны дат

getDates(s, e){
//below code is getting start date and end date plus placing the range in an array for upload into firebase. 
var grabDates = [];
const start = moment(s).format("MM-DD-YYYY")
const end = moment(e).format("MM-DD-YYYY")
const range = moment.range(s, e)
const arrayOfDates = Array.from(range.by('days'))
arrayOfDates.map(m => {
      var dates = m.format("YYYY-MM-DD");
      grabDates.push(dates);
});
this.markedDates = grabDates

}

Затем я загружаю в firebase, используя функцию ниже.

confirm(){
if (this.markedDates == null){
  alert('Please choose your dates');
} else {
    var currentUser = firebase.auth().currentUser.uid;
    var db = firebase.firestore();
    var newData = db.collection('Calendars').doc(currentUser).collection('Dates');
    newData.add({
      bookedDates: [this.state.markedDates]
      }).then(function(docRef){
      console.info(docRef);
      }).catch(function(error) {
      console.info("Error writing document: ", error);
    });
}

}

Заранее спасибо за вашу помощь!

Сообщение об ошибке

omurbek 16.08.2018 06:09

Функция DocumentReference.set () вызвана с недопустимыми данными. Вложенные массивы не поддерживаются

Kieran 20.08.2018 19:13
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
2
205
0

Другие вопросы по теме