angular - 可观察到的错误消息 - 无法在订阅中捕获

标签 angular rxjs

我在 Angular 4 中使用 RXJS observable

import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/from';

我的函数如下

public temp(){
         return Observable.create(observer => {

            this.platform.ready().then(() => {
                this.sqlite.create({
                    name: 'offline.db',
                    location: 'default'
                }).then((db: SQLiteObject) => {
                    db.executeSql("select * from TEMP_INSTANCE WHERE CRE_BY=? AND AUD_NUMBER=? ", [localStorage.getItem("user_name"), localStorage.getItem("audNo")])                                               auditNumber]).then(
                        a => {      
                            if (a && a.rows && a.rows.length > 0) {
                                this._util.logData('instance already downloaded.' +  localStorage.getItem("audNo"));
                                return Observable.throw("Instance already downloaded for offline use");

                                } else {
                                         observer.next(true);
                                         observer.complete();

                                }
                        });

                });
            }); 
    }

这个功能在我的服务中订阅如下

this._dbService.temp().subscribe(a =>{
                                    if(a){
                                        alert('Yet to download');

                                    }
                                },
                        error => {
                           alert('Error'+e);
                        });

出于某种原因,我无法得到错误。任何人都可以建议 hw 抛出错误吗?请帮忙。

最佳答案

代替 return Observable.throw("..."); 你必须使用:

observer.error("Instance already downloaded for offline use");

关于angular - 可观察到的错误消息 - 无法在订阅中捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43983532/

相关文章:

javascript - 如何测试 RxJS 事件

typescript - 如何使用 LatestFrom 从 rxjs 6 键入数组映射参数

javascript - 正式更改 Angular 4 中的选择框动态

javascript - Angular 2 : get data from http in parent-component and subscribe on it nested

javascript - 错误 TS7017 : Index signature of object type implicitly has an 'any' type in form validation angular 2

angular - 可观察的 forkjoin 订阅类型

Angular 2 : Using service to share data between components

javascript - ngx-quill/quill.js 从innerHTML中去除自定义印迹

javascript - Angular 2 : reference error can't find variable require

javascript - 检测 Angular 组件中的实际事件订阅者