繁体   English   中英

如何修复 AngularFire 迁移可观察到的错误类型?

[英]How to fix AngularFire migration observable error type?

我升级了一个一年多没碰过的项目。 它在 angular 10。我升级到 angular 12 但现在我需要将AngularFire从 v6 升级到 v7 并且似乎我有打字问题(乍一看)。

这是我的依赖项:

"@angular/animations": "~12.2.16",
"@angular/cdk": "^12.2.13",
"@angular/common": "~12.2.16",
"@angular/compiler": "~12.2.16",
"@angular/core": "~12.2.16",
"@angular/fire": "^7.2.1",
"@angular/flex-layout": "^12.0.0-beta.35",
"@angular/forms": "~12.2.16",
"@angular/material": "^12.2.13",
"@angular/platform-browser": "~12.2.16",
"@angular/platform-browser-dynamic": "~12.2.16",
"@angular/router": "~12.2.16",
"date-fns": "^2.22.1",
"eslint": "^8.10.0",
"firebase": "^9.4.0",
"ngx-material-timepicker": "^5.5.3",
"rxjs": "^6.6.6",
"tslib": "^2.1.0",
"tslint": "^6.1.3",
"zone.js": "~0.11.4",
"rxfire": "^6.0.0"

我有一个非常简单的非工作示例:

import { AngularFirestore, AngularFirestoreCollection } from '@angular/fire/compat/firestore';
import { Order } from '@models/order';
import {  Observable } from 'rxjs';

@Injectable({
  providedIn: 'root',
})
export class OrderService {
  private ordersCollection: AngularFirestoreCollection<Order>;
  orders: Observable<Order[]>;

  constructor(private firestore: AngularFirestore) {
    this.ordersCollection = firestore.collection<Order>('orders');
    this.orders = this.ordersCollection.valueChanges();
  }

 ...Some CRUD methods bu im not even there for the migration...
}

在变量 this.orders 上我有以下错误:

类型“Observable<Order[]>”缺少类型“Observable<Order[]>”中的以下属性:_isScalar、_trySubscribe

我严格按照 AngularFire 的迁移指南阅读了新的文档实现,但没有成功......

这是迁移页面: https://github.com/angular/angularfire/blob/master/docs/version-7-upgrade.md

有人对此有任何提示吗?

提前非常感谢您,对于可能出现的错别字,我们深表歉意。

如果您需要更多信息,请不要犹豫。

问候。

亚历克斯

找到了。 问题是旧的 rxjs 版本。 我在 6.xx。 升级到 v7 消除了错误。

经常升级你的项目,别像我一样傻!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM