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

шаги:
1- Загрузить данные о продуктах из Firebase-Store , используя StreamBuilder (Готово).
2 - Миниатюрный URL-адрес продуктов загружается из базы данных, затем загружается изображение из Firebase-Storage с использованием NetworkImage (Готово).
3- Я считаю, что это неправильный способ загрузки изображений, поскольку он не будет работать после изменения правил безопасности Firebase-Storage , что ожидается.
Мои новые правила FirebaseStorage: allow read, write: if request.auth != null;
4- Чтобы исправить это, я работаю над загрузкой изображений в память с помощью getData ()
final FirebaseStorage storage = FirebaseStorage(
app: Firestore.instance.app,
storageBucket: 'gs://...'
);
Uint8List imageBytes;
String errorMsg;
SOME_CONSTRUCTOR() {
storage
.ref()
.child(imageTitle)
.getData(10000000)
.then(..)..
}
Затем загрузите изображение из памяти:
Image.memory(imageBytes, fit: BoxFit.cover,)
это работает нормально, но я ищу лучший метод для этого и вот мои вопросы:
A- Этот код должен быть частью load-from-db («поток» потока)Builder) или более поздней версии внутри создания карт из извлеченных данных из db («построитель» streamBuilder)?
B - есть ли возможность загрузить изображение во время загрузки изdb, предположим, что каждая запись в db имеет изображение (1-к-1), поэтому оно будет выглядеть так:
fetch row-> download its image
fetch row-> download its image
THEN NEXT ROWs...
?
C- Или лучше загрузить элементы, тогдастроить карты, а затем загружать изображения, пока карты видны для пользователей?
D- Есть еще какие-нибудь советы, которые могут помочь мне разобраться с этим?