我如何从Angularfire承诺创建的可观察对象中捕获错误

问题描述 投票:0回答:1

我正在尝试使用angularfire将有角应用程序中的文件上传到Firebase。我首先从promise创建一个可观察对象,然后尝试使用catcherror来获取错误。我在存储规则中设置了一个规则,不允许文件大于1MB。当我尝试上传更大的文件时,它不允许这样做,但我也没有收到错误消息。它与使用from创建可观察对象有关吗?这是我的代码。

let ref = this.afStorage.ref(`/folder`);

    return from(ref.put(file)).pipe(
        tap(() => this.store.dispatch(fromRoot.loadSuccess({message: `File Uploaded Successfully`, showMsg: true}))),
        catchError(err => of(fromRoot.loadFail({message: `Failed To Upload File`, showMsg: true, error: err})))
    )
angular rxjs angularfire
1个回答
0
投票

[抱歉,这是ngrx的一个错误。我没有在catchError中调度动作。应该是

let ref = this.afStorage.ref(`/folder`);

return from(ref.put(file)).pipe(
    tap(() => this.store.dispatch(fromRoot.loadSuccess({message: `File Uploaded Successfully`, showMsg: true}))),
    catchError(err => of(this.dispatch(fromRoot.loadFail({message: `Failed To Upload File`, showMsg: true, error: err})))))
)
© www.soinside.com 2019 - 2024. All rights reserved.