可观察的行为

时间:2019-11-16 05:03:11

标签: angular rxjs observable ngrx angular-ngrx-data

我正在努力进行一些我认为非常简单的事情。本质上,我有一个angular 8应用程序,正在使用ngrx。我所有的CRUD操作都可以正常工作,但是我想在成功完成并添加或更新后导航到URL。

当我单步执行代码时,除了触发从可观察对象返回的更改外,其他所有工作都可行,我尝试了两种不同的方法,它们似乎都从可观察对象返回,但不会完成下一步。

firestore和我的ngrx和ngrx /数据存储中的实际更新或添加记录完美地工作了,唯一不起作用的是我完成这些活动后提供的指令

为简化起见,我刚刚添加了控制台日志语句,而不是路由操作。当我调试时,我返回到subscribe或tap运算符,但它似乎不执行该方法中的指令,并且不返回任何错误。

产品组件

第一种方法

this._entityService.add(entity).subscribe(() => console.log('added record'));

第二种方法

this._entityService.add(entity).pipe(
            tap(() => {
                console.log('added record');
            })
        );

实体服务

add(entity): Observable<any> {
        return Observable.create(observer =>
            this.firestoreService.createDoc(`products/`, entity)
        );
    }

1 个答案:

答案 0 :(得分:-1)

尝试

this._entityService.add(entity).subscribe((response: any) => {
  console.log(response)
});