Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular Typescript:将类型定义添加到Observable.of(null)_Angular_Typescript_Observable - Fatal编程技术网

Angular Typescript:将类型定义添加到Observable.of(null)

Angular Typescript:将类型定义添加到Observable.of(null),angular,typescript,observable,Angular,Typescript,Observable,在我的程序中,我有一个方法,可以返回MyClass的observable或OfUrl的observable。 代码大致如下: doSomething(someParams) { return this.backEnd.getStuff(someParams) .switchMap(data => { if (!data ) {

在我的程序中,我有一个方法,可以返回MyClass的observable或OfUrl的observable。 代码大致如下:

doSomething(someParams) {    
      return this.backEnd.getStuff(someParams)
                    .switchMap(data => {
                        if (!data ) {
                            return Observable.of(null);
                        } else {
                            this.doSomethingElse(data);
                        }
                    });
}
其中doSomethingElse返回一个可观察的

如果我像上面那样对方法进行编码,我就会失去intellisense,因为我的IDE VSCode告诉我doSomething方法返回一个可观察值


在这种情况下,有没有办法保持智能感知?我想要的是IDE建议我doSomething方法返回一个可观察的,并且自然地让我进行逻辑检查,当结果被订阅时,是否确实存在MyClass或null的实例。

您可以将返回类型键入Observable,其中MyClass | null是:

doSomething(someParams): Observable<MyClass | null> {
   // ...
}