Firebase - создать таблицу из данных базы данных

Я хотел бы знать, как создать такую ​​таблицуFirebase - создать таблицу из данных базы данных из некоторых данных в базе данных firebase, подобной этой Firebase - создать таблицу из данных базы данных

Должен быть столбец для идентификатора, заголовка, количества ответов, правильного ответа и типа. Желательно это делать с помощью jQuery.

Заранее спасибо.

Что означает создать таблицу? База данных Firebase не имеет строк и столбцов, а также таблиц - только родительские и дочерние узлы, которые являются парами ключ: значение (подумайте: словарь). Какой стол вам нужен? Таблица SQL? Двумерный массив? Набор классов? Что должно быть «столом»? Нам действительно нужно больше данных, чтобы дать ответ - возможно, предоставление нам варианта использования и демонстрация того, что вы уже пробовали, поможет нам лучше понять, что вы пытаетесь сделать.

Jay 14.03.2018 20:10

Я имею в виду таблицу HTML

Benjamin Sommer 14.03.2018 21:32

Пробовали Datatable

Himanshu 14.03.2018 22:14
Поведение ключевого слова "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) для оценки ваших знаний,...
1
3
4 201
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Получить данные

Прочтите базу данных firebase документация и Рекомендации.

Базовая операция чтения firebase выглядит так:

var ref = firebase.database().ref("location");
ref.once("value")
  .then(function(snapshot) {
    var key = snapshot.key;
    var value = snapshot.val();

    console.info(key + ": " + value);
  });

Конечно, вам нужно заранее добавить скрипты для база данных firebase и firebase.

Если вы хотите перебрать данные, вы можете использовать функцию для каждого, например:

var query = firebase.database().ref("location2");

query.once("value").then(function(snapshot) {
  snapshot.forEach(function(childSnapshot) {
    var key = childSnapshot.key;
    var value = childSnapshot.val();

    console.info(key + ": " + value);
  });
});

Таблица

Вы можете создавать таблицу динамически, используя JS - функции, такие как createElement и createDocumentFragment

Например:

var fragment = document.createDocumentFragment();
var animalsArray = ["Elephant", "Dog", "Cat"];

var table = document.createElement("table");

for (var i = 0; i < animalsArray.length; i++) {
  var tr = document.createElement("tr");
  var td = document.createElement("td");

  td.textContent = animalsArray[i];

  tr.appendChild(td);
  table.appendChild(tr);
}

fragment.appendChild(table);
document.body.appendChild(fragment);

Таблица построена из данных в базе данных Firebase

А теперь соедините вышеупомянутые концепции вместе. Создайте таблицу. Получите данные из базы данных firebase. При каждом обращении к этим данным: создайте новую строку таблицы с ячейками, построенными из ключа и значения элемента. В примере ниже я использовал цикл for, чтобы не дублировать одну и ту же операцию для каждой ячейки.

Полный пример:

Дерево данных в базе данных Firebase:

{
  "location2" : {
    "hello" : "world",
    "hi" : "Mark"
  }
}

Код:

var fragment = document.createDocumentFragment();
var table = document.createElement("table");

var query = firebase.database().ref("location2");

query.once("value").then(function(snapshot) {
  snapshot.forEach(function(childSnapshot) {
    var tr = document.createElement("tr");
    var trValues = [childSnapshot.key, childSnapshot.val()];

    for (var i = 0; i < trValues.length; i++) {
      var td = document.createElement("td");

      td.textContent = trValues[i];
      tr.appendChild(td);
    }

    table.appendChild(tr);
  });
});

fragment.appendChild(table);
document.body.appendChild(fragment);

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