Я использовал RNFirebase, прежде чем загружать изображение в Firebase. В то время я использовал этот код:
firebase
.storage()
.ref()
.child(`posts/${fileName}`)
.putFile(postImage.uri)
.then((value) => {
console.log('Put file response :', value);
Здесь
let result = await ImagePicker.launchImageLibraryAsync({
mediaTypes: ImagePicker.MediaTypeOptions.All,
// allowsEditing: true,
// aspect: [4, 3],
quality: 1
});
console.log(result);
if (!result.cancelled) {
this.setState({ imageData: result });
}
postImage = result.uri
То есть postImage - это URL изображения. Однако я должен изменить код с помощью firebase и загрузить изображение в хранилище и базу данных firebase. Поэтому я использовал этот код:
firebase
.storage()
.ref()
.child(`posts/${fileName}`)
.put(postImage.uri)
.then((value) => {
console.log('Put file response :', value);
Но результат имеет ошибки на экране. На экране возвращается [object object]
. Итак, я посмотрел документы Firebase, и функция put
должна иметь такие данные: put(data | blob)
Но я не могу этого понять. Как я могу это сделать? Дайте мне знать, как это исправить ~ Спасибо и наилучшие пожелания.