# #firebase #react-native #upload #expo
Вопрос:
У меня проблема с собственным проектом React с Expo: он не может загрузить изображение в хранилище в Firebase (ошибка типа: _firebase.default.хранилище не является функцией).
import React, { useState, useEffect } from 'react';
import { Button, Image, View, Platform } from 'react-native';
import * as ImagePicker from 'expo-image-picker';
import firebase from '../../database/firebase';
export default function UploadImageScreen() {
const [image, setImage] = useState(null);
useEffect(() => {
(async () => {
if (Platform.OS !== 'web') {
const { status } = await ImagePicker.requestMediaLibraryPermissionsAsync();
if (status !== 'granted') {
alert('Sorry, we need camera roll permissions to make this work!');
}
}
})();
}, []);
const pickImage = async () => {
let result = await ImagePicker.launchImageLibraryAsync();
console.log(result);
var ref = firebase.storage().ref().child("images/" image.uri);
if (!result.cancelled) {
setImage(result.uri);
}
};
return (
<View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
<Button title="Pick an image from camera roll" onPress={pickImage} />
{image amp;amp; <Image source={{ uri: image }} style={{ width: 200, height: 200 }} />}
</View>
);
}
В этой строке кода есть ошибка, но я не знаю, почему:
var ref = firebase.storage().ref().child("images/" image.uri);
Комментарии:
1. Пожалуйста, поделитесь
../../database/firebase
определением, и вы также можете пропуститьimport 'firebase/storage';
импорт.