首页 > 解决方案 > AngularFire 存储获取文件 url

问题描述

我对来自 AngularFire Storage 的 getDownloadURL() 方法有疑问。我无法使用 then() 没有错误。

这是我的代码:

import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';

import { AngularFireModule } from 'angularfire2';
import { AngularFireDatabase } from 'angularfire2/database';
import { AngularFireStorage } from 'angularfire2/storage';

import { GroupDetailsPage } from '../group-details/group-details';

@Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})
export class HomePage {

    constructor(public navCtrl: NavController, private afDB: AngularFireDatabase, private afStorage: AngularFireStorage) {


        let ref = this.afStorage.ref('test.jpg');
            ref.getDownloadURL().then(function(url){
                console.log( url );
            });

    }

}

这是我的错误:错误错误:未捕获(承诺):TypeError:ref.getDownloadURL(...).then不是函数

如果我不使用 then() 我会得到一个 PromiseObservable 作为响应。

你有想法吗?

提前致谢,

标签: firebasefirebase-storageangularfireangularfire2

解决方案


只需使用获取文件网址

let ref = this.afStorage.ref('test.jpg');
this.url = ref.getDownloadURL();

并将其与模板文件中的异步管道一起使用。


推荐阅读