Получить значения массива Firestore Database extra - PullRequest
0 голосов
/ 29 января 2019

Я получаю значения Firestore и добавляю их в список массивов со следующим кодом JavaScript:

var mdlPoints = [];
var schrPoints = [];

db.collection("users").doc(user_uid).collection("grades").get().then(function(querySnapshot) {
        querySnapshot.forEach(function(doc) {
            const data = doc.data();
            mdlPoints.push(data.mdl);
            schrPoints.push(data.klu);

            console.log("mdl: " + data.mdl);
            console.log("klu: " + data.klu);
        });  

Структура выглядит следующим образом:
db structure

Как видите, все поля хранятся в ArrayList (klu: [4,9] или mdl: [5]).Как вы можете видеть в моем коде JavaScript, я хочу добавить отдельные числа в мой список массивов в js.

Это прекрасно работает для списков массивов, которые имеют только один контент, как на рисунке mdl с номером содержимого 5. Но в списках массивов с большим количеством номеров, как на рисунке, klu с числами4 и 9.

Поэтому, когда я печатаю выходные значения, я получаю что-то вроде этого: klu: 4,9.И это значение добавляется в список массивов со следующей строкой: schrPoints.push(data.klu); Но Я в случае, когда я могу НЕ добавить 4,9 в список.Я должен добавить 4 и 9 отдельно без запятой.

Как этого добиться?

Ответы [ 2 ]

0 голосов
/ 30 января 2019

Ответом @Hensler Software я исправил свою проблему следующим образом:

db.collection("users").doc(user_uid).collection("grades").get().then(function(querySnapshot) {
    querySnapshot.forEach(function(doc) {
        const data = doc.data();

        for (var i = 0; i < data.mdl.length; i++) {
          mdlPoints.push(data.mdl[i]);
        }

        for (var i = 0; i < data.klu.length; i++) {
          schrPoints.push(data.klu[i]);
        }
    });
0 голосов
/ 29 января 2019

Если это одно значение, вы можете использовать метод массива split() для ["4,9"] для разделения 4 и 9.

Как это:

var newKluArray = data.klu.split(',') // [4, 9] array with 2 values

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

newKluArray[0]; // 4
newKluArray[1]; // 9

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...