我正在努力进行一些我认为非常简单的事情。本质上,我有一个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)
);
}
答案 0 :(得分:-1)
尝试
this._entityService.add(entity).subscribe((response: any) => {
console.log(response)
});