У меня проблемы с пониманием документации Expo FileSystem в отношении изображений. Я беру фотографии из FireBase, которые хранятся с расширением файла: file:///var/mobile/Containers/Data/Application/F1234555C/Library/Caches/ExponentExperienceData/%2540anonymous%252Fexmulti-55555a/ImagePicker/9D123456789.jpg
.
Похоже, мне нужно сохранить каждое изображение с помощью: FileSystem.documentDirectory
, а затем снова вытащить его обратно с помощью: FileSystem.getInfoAsync(fileUri, options)
. Затем возвращенный ответ, который я могу ввести в источник изображения, выглядит так:
<Image style={{flex:1, height: undefined, width: undefined}} resizeMode="cover" source={{uri: returnedFileSystemData}} />
Ответ, который я получаю, не является подходящей строкой uri, которая приводит меня к вопросу 1) что на самом деле происходит с FileSystem. documentDirectory вызывается, и является ли это даже правильным способом передачи файла изображения в тег источника?
https://docs.expo.io/versions/latest/sdk/filesystem/
Код (могут быть синтаксические ошибки - просто написал это как грубый текст)обзор того, что я делаю):
firebase.database().ref('/Users/' + userId).once('value').then(function(snapshot) {
var pictures = (snapshot.val() && snapshot.val().pictures);
setPictures(pictures);
FileSystem.documentDirectory + pictures;
Object.keys(pictures).map(function(key) {
//I have tried looping through the pictures array and adding each file to the documentDirectory as well
}
....
<View style={[styles.child]}>
<Image style={{flex:1, height: undefined, width: undefined}} resizeMode="cover" source={{uri: FileSystem.getInfoAsync(pictures[0])}} />