Как правильно получить данные из Firebase в JavaScript?

Ребята, помогите разобраться! Пытаюсь достать инфу из Firebase через JavaScript, но постоянно выскакивает [object Object]. Вот мой код:

let notesRef = database.ref(`users/${userId}/notes`);
notesRef.on('value', (snapshot) => {
  let notes = snapshot.val();
  console.log(notes);
  // Тут пытаюсь отрендерить
});

А на клиентской стороне пробую вывести так:

<p id='notes-container'></p>
document.getElementById('notes-container').innerText = notes;

Что я делаю не так? Может, нужно как-то по-другому обрабатывать данные из Firebase? Буду благодарен за любые подсказки!

Проблема в том, что snapshot.val() возвращает объект, а не строку.
Чтобы вывести данные, нужно их преобразовать. Попробуй так:

let notesText = JSON.stringify(notes, null, 2);
document.getElementById('notes-container').innerText = notesText;

Это преобразует объект в читаемый текст. Ещё вариант — перебрать объект в цикле и вывести каждую запись отдельно. Так будет удобнее для пользователя.

Чувак, у тебя классическая ошибка с объектами. Firebase возвращает объект, а ты пытаешься запихнуть его в innerHTML как строку. Вот что я бы сделал:

notesRef.on('value', (snapshot) => {
  let notes = snapshot.val();
  let notesContainer = document.getElementById('notes-container');
  notesContainer.innerHTML = '';
  
  for (let key in notes) {
    let p = document.createElement('p');
    p.textContent = notes[key];
    notesContainer.appendChild(p);
  }
});

Так ты пробежишься по всем нотам и выведешь их в читаемом виде. Удачи!