Как получить каждое значение документов из коллекции в отдельном списке в соответствии с идентификатором документа во флаттере - PullRequest
1 голос
/ 05 февраля 2020

Например. В коллекции 10 или более документов, я хочу создать список этой коллекции в соответствии с DocumentsId, и этот список содержит только значения, а не ключи.

Документ 1 ->

    'Num1':'1',
    'Num2':'2',
    'Num3': '3',
    'Num4': '4',
    'Num5': '5',
    'Num6': '6',
    'Num7': '7',
    'Num8': '8',
    'Num9': '9',
    'Num10': '10',

Документ 2 ->

    'Num1':'1',
    'Num2':'2',
    'Num3': '3',
    'Num4': '4',
    'Num5': '5',
    'Num6': '6',
    'Num7': '7',
    'Num8': '8',
    'Num9': '9',
    'Num10': '10',

Список будет таким же для каждого списка документов Document1 = [1,2,3,4,5,6,7,8,9, 10] List document2 = [11,12,13,14,15,16,17,18,19,20] И каждое имя списка - documentmentid

1 Ответ

1 голос
/ 05 февраля 2020

Предполагая, что 'Коллекция' - это простой объект карты, который вы можете сделать:

Map temp= { 'Num1':'1',
'Num2':'2',
'Num3': '3',
'Num4': '4',
'Num5': '5',
'Num6': '6',
'Num7': '7',
'Num8': '8',
'Num9': '9',
'Num10': '10',};
 var newList=temp.values.toList();

Если это пользовательский объект, вы можете использовать метод карты:

myobjectList.map((object)=>object.id).toList();

итерируйте все элементы в коллекции и «сопоставьте» каждый с нужным свойством.

РЕДАКТИРОВАТЬ:

Динамически вы не можете изменить имя переменной, но вы можете изменить атрибуты переменной. То, что вы sh может быть достигнуто как:

List<List<int>> documents;
//access each document by its index
List document1 = [1,2,3,4,5,6,7,8,9,10]
documents[0]//would be equal to accessing  document1

ИЛИ использовать карту:

Map map={document.name:[1,2,3,4,5]};
map['document2']=[6,7,8,9,10];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...