角度:错误 TS2322:类型 'Observable<{}>' 不可分配......使用 share() 运算符

亚历克斯·玛瓦希

我是 Angular 5 的新手,我正在实施 Observable/Observer 模式,以便与订阅者共享一些事件和一些数据更改。

这里的代码片段:

...
@Injectable()
export class NidoService {
  ...
  event$: Observable<StrutturaDto[]>;
  private _observer: Observer<any>;

  event_dettaglio$: Observable<Struttura>;
  private _observer_dettaglio: Observer<any>;

  constructor() {
     this.event$ = new Observable(observer => this._observer = observer).share();
     this.event_dettaglio$ = new Observable(observer => this._observer_dettaglio = observer).share();
  }
  ...
}

当我尝试使用ng build构建应用程序时,构造函数中的两行代码中出现这些错误

ERROR in src/app/services/nido.service.ts(28,7): error TS2322: Type 'Observable<{}>' is not assignable to type 'Observable<StrutturaDto[]>'.
Type '{}' is not assignable to type 'StrutturaDto[]'.
Property 'includes' is missing in type '{}'.
src/app/services/nido.service.ts(29,7): error TS2322: Type 'Observable<{}>' is not assignable to type 'Observable<Struttura>'.
Type '{}' is not assignable to type 'Struttura'.
Property 'idStruttura' is missing in type '{}'.

当我在开发模式下使用它时,我没有问题,但是如果不修复它们我就无法构建。如何更改两行代码?

迈克·斯皮里斯

您需要指定可观察的类型:

this.event$ = new Observable<StrutturaDto[]>(observer => this._observer = observer).share();

this.event_dettaglio$ = new Observable<Struttura>(observer => this._observer_dettaglio = observer).share();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

错误 TS2322:类型“Observable<{}[]>”不可分配给类型“Observable<Archive[][]>”

来自分类Dev

TS2322:类型“ Observable <{}>”不可分配给类型“ Observable <Hero>”

来自分类Dev

错误 TS2322:“对象”类型不可分配给“产品”类型

来自分类Dev

Reactjs 和打字稿错误 TS2322:类型不可分配给类型“IntrinsicAttributes 和 IntrinsicClassAttributes”

来自分类Dev

错误 TS2322:“对象”类型不可分配给“联系人”类型。角

来自分类Dev

错误 TS2322:类型 'string' 不可分配给类型 'Type<any>'。在角 7

来自分类Dev

错误 TS2322:类型 'void' 不可分配给类型 'Promise<void> | JQueryPromise<void>'

来自分类Dev

Agular 11错误TS2322:类型'Observable <>

来自分类Dev

Agular 11错误TS2322:类型'Observable <>

来自分类Dev

在方法块中使用方法声明中的变量时,出现“变量不可分配(缺少__block类型说明符)”错误

来自分类Dev

rxjs - [ts] 输入 'Observable<{} | T>' 不可分配给类型 'Observable<T>'

来自分类Dev

TS2322:“日期”类型不可分配为“从不”类型

来自分类Dev

TS2322:类型“数字”不可分配给类型“ bigint”

来自分类Dev

TS2322:类型“对象”不可分配给类型“商店”

来自分类Dev

Angular2错误'类型'{}'的参数不可分配...'

来自分类Dev

类型的打字稿修复错误参数不可分配

来自分类Dev

类型'Observable <Observable <Response >>'不可分配给类型'Observable <Response>'

来自分类Dev

类型 'Observable<Observable<Object[]>>' 不可分配给类型 'Observable<Object[]>'

来自分类Dev

输入 'Observable<any[] | Observable<any[]>>' 不可分配给类型 'Observable<any[]>'

来自分类Dev

使用React和Typescript创建具有不可分配类型错误的可重用按钮组件

来自分类Dev

角度错误类型字符串不可分配为永不类型

来自分类Dev

RXJS Observable 枚举类型,类型 'Observable<Type>' 不可分配给类型 'Type'

来自分类Dev

类型 Observable<boolean> 不可分配给类型 Observable<HttpResponse<boolean>>

来自分类Dev

输入 '(token: string) => Observable<{ headers: HttpHe aders; }>' 不可分配给类型 'Observable<any>'

来自分类Dev

TS2322:输入'Todo [] | “ null”不可分配给“ Todo []”类型。类型“ null”不可分配给类型“ Todo []”

来自分类Dev

TS 编译器错误:类型 'string' 不可分配给类型 'Status'

来自分类Dev

类型 'Date' 不可分配给类型 'Observable<Date>' - Angular 6+

来自分类Dev

输入'可观察的<{} | IProduct[]>' 不可分配给类型 'Observable<IProduct[]>'

来自分类Dev

Angular 6 GridDataResult' 不可分配给类型 'Observable<GridDataResult>

Related 相关文章

  1. 1

    错误 TS2322:类型“Observable<{}[]>”不可分配给类型“Observable<Archive[][]>”

  2. 2

    TS2322:类型“ Observable <{}>”不可分配给类型“ Observable <Hero>”

  3. 3

    错误 TS2322:“对象”类型不可分配给“产品”类型

  4. 4

    Reactjs 和打字稿错误 TS2322:类型不可分配给类型“IntrinsicAttributes 和 IntrinsicClassAttributes”

  5. 5

    错误 TS2322:“对象”类型不可分配给“联系人”类型。角

  6. 6

    错误 TS2322:类型 'string' 不可分配给类型 'Type<any>'。在角 7

  7. 7

    错误 TS2322:类型 'void' 不可分配给类型 'Promise<void> | JQueryPromise<void>'

  8. 8

    Agular 11错误TS2322:类型'Observable <>

  9. 9

    Agular 11错误TS2322:类型'Observable <>

  10. 10

    在方法块中使用方法声明中的变量时,出现“变量不可分配(缺少__block类型说明符)”错误

  11. 11

    rxjs - [ts] 输入 'Observable<{} | T>' 不可分配给类型 'Observable<T>'

  12. 12

    TS2322:“日期”类型不可分配为“从不”类型

  13. 13

    TS2322:类型“数字”不可分配给类型“ bigint”

  14. 14

    TS2322:类型“对象”不可分配给类型“商店”

  15. 15

    Angular2错误'类型'{}'的参数不可分配...'

  16. 16

    类型的打字稿修复错误参数不可分配

  17. 17

    类型'Observable <Observable <Response >>'不可分配给类型'Observable <Response>'

  18. 18

    类型 'Observable<Observable<Object[]>>' 不可分配给类型 'Observable<Object[]>'

  19. 19

    输入 'Observable<any[] | Observable<any[]>>' 不可分配给类型 'Observable<any[]>'

  20. 20

    使用React和Typescript创建具有不可分配类型错误的可重用按钮组件

  21. 21

    角度错误类型字符串不可分配为永不类型

  22. 22

    RXJS Observable 枚举类型,类型 'Observable<Type>' 不可分配给类型 'Type'

  23. 23

    类型 Observable<boolean> 不可分配给类型 Observable<HttpResponse<boolean>>

  24. 24

    输入 '(token: string) => Observable<{ headers: HttpHe aders; }>' 不可分配给类型 'Observable<any>'

  25. 25

    TS2322:输入'Todo [] | “ null”不可分配给“ Todo []”类型。类型“ null”不可分配给类型“ Todo []”

  26. 26

    TS 编译器错误:类型 'string' 不可分配给类型 'Status'

  27. 27

    类型 'Date' 不可分配给类型 'Observable<Date>' - Angular 6+

  28. 28

    输入'可观察的<{} | IProduct[]>' 不可分配给类型 'Observable<IProduct[]>'

  29. 29

    Angular 6 GridDataResult' 不可分配给类型 'Observable<GridDataResult>

热门标签

归档