AngularFire存储-使用Firebase

问题描述

我目前正在使用AngularFire将我的图片上传到Firebase存储,然后使用firebase图片调整大小扩展名调整大小。这对于200x200的个人资料图片效果很好。

我现在要上传其他图片,并调整其尺寸为500x500。

我制作了另一个存储桶,并安装/配置了Firebase扩展的另一个实例,以将尺寸上传到新存储桶的尺寸调整为500x500。

我不知道如何在应用程序的存储桶之间进行切换,因此我可以将个人资料图像上传到一个存储桶中,而将其他图像上传到另一个存储桶中。

有人能用AngularFire做到这一点吗?

注意: -我知道您可以使用firebase JS SDK(原始firebase)来执行此操作,但如果可能的话,我想使用AngularFire来执行此操作,以避免更改我的代码。

-我也知道您可以使用一个调整大小扩展实例指定多个调整大小分辨率,但这会创建大量不必要的图像,因为每次上传都会创建200x200和500x500。

解决方法

据我所知,使用AngularFire无法完全做到这一点。 我最终重构了代码,以将原始Firebase用于此特定部分。它非常相似,但是调用和对象与我在AngularFire中使用的不同。

constructor(private afStorage: AngularFireStorage) {
   this.defaultBucket = this.afStorage.storage.app.storage();
   this.otherBucket = this.afStorage.storage.app.storage(OTHER_BUCKETNAME);
}

const storageRef = this.otherBucket.ref().child(FILENAME);
   storageRef.put(file).then((snapshot) => {
   console.log('Uploaded a blob or file!',snapshot);
}

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...