我Observable.of在项目中导入函数时遇到问题.我的Intellij看到了一切.在我的代码中,我有:
import {Observable} from 'rxjs/Observable';
Run Code Online (Sandbox Code Playgroud)
在我的代码中我使用它:
return Observable.of(res);
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
uks*_*ksz 224
其实我的进口搞砸了.在最新版本的RxJS中,我们可以像这样导入它:
import 'rxjs/add/observable/of';
Run Code Online (Sandbox Code Playgroud)
小智 141
如果在使用Angular 6/rxjs 6时有任何人遇到此问题,请参阅此处的答案: 无法在RxJs 6和Angular 6中使用Observable.of
简而言之,您需要像这样导入它:
import { of } from 'rxjs';
Run Code Online (Sandbox Code Playgroud)
而不是打电话
Observable.of(res);
Run Code Online (Sandbox Code Playgroud)
只是用
of(res);
Run Code Online (Sandbox Code Playgroud)
Mar*_*ger 42
虽然这听起来很奇怪,但对我来说,重要的是在导入路径中大写'O' import {Observable} from 'rxjs/Observable.observable_1.Observable.of is not a function如果我从中导入Observable,则保持存在的错误消息rxjs/observable.奇怪,但我希望它能帮助别人.
Eye*_*Eye 29
我的愚蠢错误是当我/add要求观察时我忘了添加.
是:
import { Observable } from 'rxjs/Observable';
import 'rxjs/observable/of';
Run Code Online (Sandbox Code Playgroud)
rxjs/observable/of事实上,在视觉上看起来很好,因为存在.
应该:
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/of';
Run Code Online (Sandbox Code Playgroud)
Aki*_*_MJ 24
如果您使用的是Angular 6/7
import { of } from 'rxjs';
Run Code Online (Sandbox Code Playgroud)
而不是打电话
Observable.of(res);
Run Code Online (Sandbox Code Playgroud)
只是用
of(res);
Run Code Online (Sandbox Code Playgroud)
小智 19
无论出于何种原因,补丁对我不起作用,所以我不得不求助于这种方法:
import { of } from 'rxjs/observable/of'
// ...
return of(res)
Run Code Online (Sandbox Code Playgroud)
dha*_*tar 18
只是添加,
如果您使用其中许多,那么您可以导入所有使用
import 'rxjs/Rx';
Run Code Online (Sandbox Code Playgroud)
正如@Thierry Templier所说.但我认为如果您使用的是有限运营商,那么您应该导入个别运营商
import 'rxjs/add/operator/filter';
import 'rxjs/add/operator/mergeMap';
import 'rxjs/add/observable/of';
Run Code Online (Sandbox Code Playgroud)
如@uksz所述.
因为'rxjs/Rx'将导入绝对性价比的所有Rx组件.
Thi*_*ier 16
您也可以通过这种方式导入所有运算符:
import {Observable} from 'rxjs/Rx';
Run Code Online (Sandbox Code Playgroud)
我正在使用 Angular 5.2 和 RxJS 5.5.6
此代码并没有工作:
import { Observable,of } from 'rxjs/Observable';
getHeroes(): Observable<Hero[]> {
return of(Hero[]) HEROES;
}
Run Code Online (Sandbox Code Playgroud)
下面的代码有效:
import { Observable } from 'rxjs/Observable';
import { Subscriber } from 'rxjs/Subscriber';
getHeroes(): Observable<Hero[]>
{
return Observable.create((observer: Subscriber<any>) => {
observer.next(HEROES);
observer.complete();
});
}
Run Code Online (Sandbox Code Playgroud)
调用方式:
this.heroService.getHeroes()
.subscribe(heroes => this.heroes = heroes);
Run Code Online (Sandbox Code Playgroud)
我认为他们可能会在 RxJS 5.5.2 中移动/更改 of() 功能
| 归档时间: |
|
| 查看次数: |
123615 次 |
| 最近记录: |