You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RxJs 6与Angular 6中无法使用Observable.of的问题求助

解决RxJS 6 + Angular 6中Observable.of无法使用的问题

嗨,这个问题我太熟悉了!RxJS 6对API做了大幅度的精简和调整,其中一个重要变化就是把所有创建Observable的静态方法(比如of、from这些)从Observable类里拆出来,变成了独立的函数,所以你再用Observable.of()肯定会收到“Property 'of' does not exist on type 'typeof Observable'”的报错。

具体解决步骤:

  • 你已经正确导入了of函数(import { Observable, of } from "rxjs";),现在只需要把原来的调用方式改一下:
    原来的代码:
    return Observable.of(this.purposes);
    
    改成:
    return of(this.purposes);
    

举个完整的示例:

import { Component } from '@angular/core';
import { Observable, of } from "rxjs";

@Component({
  selector: 'app-example',
  templateUrl: './example.component.html'
})
export class ExampleComponent {
  purposes = ['用途1', '用途2', '用途3'];

  getPurposes(): Observable<string[]> {
    // 直接调用独立的of函数即可
    return of(this.purposes);
  }
}

额外提醒:

RxJS 6里还有很多类似的API变化,比如:

  • Observable.from() → from()
  • Observable.throw() → throwError()
  • Observable.empty() → empty()
    如果之后遇到类似的“属性不存在”报错,大概率都是这个原因,直接改用对应的独立函数就好啦。

内容的提问来源于stack exchange,提问作者Harish Krishnan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:57:15