尝试在React Native中获取Firebase图像存储URL

时间:2019-06-11 15:38:20

标签: react-native react-native-firebase

我已成功将图像存储在Firebase存储中,但是每当我要检索下载URL时,它都会返回Object对象。但是,日志显示有效的字符串url。

P.S请看下面的代码。谢谢

getImageUrl = async(fileName) => {
    const { currentUser } = firebase.auth();
    const ref = await firebase.storage().ref().child(`${currentUser.uid}/${fileName}.PNG`);
    ref.getDownloadURL()
     .then((url) => {
         console.log('url', url);   //this gives the valid img url
         return url;                //why is it returning the object?
     }).catch(error => {
       console.log('imageError', error);
       return null;
     });
}   


render() {
    return(
      <View style={styles.container}>
        <Text>{(`${this.getImageUrl('2F1560068528')}`)}</Text>  //why is this showing an Object Object instead of download url?
      </View>
    );
}

1 个答案:

答案 0 :(得分:0)

这就是为什么要取回对象的原因。 https://firebase.google.com/docs/reference/android/com/google/firebase/storage/FirebaseStorage.html
Firebase.storage returns一个对象。 看起来当您在ref.getDownloadURL()函数内部时,url表示一个字符串,但是当它为returned时,Firebase会转换为对象。