Angular 泛型主题<;T>;需要1个类型参数。-有棱角的

Angular 泛型主题<;T>;需要1个类型参数。-有棱角的,angular,typescript,rxjs,angular-services,Angular,Typescript,Rxjs,Angular Services,我正在从我的服务中获取数据,我已经了解到在订阅后取消订阅很重要,下面是我是如何做到这一点的: 导出类RItemComponent实现OnInit{ apiPath=environment.apirl; private ngUnsubscribe:Subject=new Subject(); 构造函数(私有_sharedService:sharedService){} rItems:产品[]; 恩戈尼尼特(){ 这是共享服务。 getReceiptItem().takeUntil(this.ngU

我正在从我的服务中获取数据,我已经了解到在订阅后取消订阅很重要,下面是我是如何做到这一点的:

导出类RItemComponent实现OnInit{
apiPath=environment.apirl;
private ngUnsubscribe:Subject=new Subject();
构造函数(私有_sharedService:sharedService){}
rItems:产品[];
恩戈尼尼特(){
这是共享服务。
getReceiptItem().takeUntil(this.ngUnsubscribe)。
订阅(products=>this.rItems=products);
}
恩贡德斯特罗(){
this.ngUnsubscribe.next();
this.ngUnsubscribe.complete();
}
}
但现在我得到了一个错误:

Generic type Subject<T> requires 1 type argument(s). subscribe
泛型类型主题需要1个类型参数。订阅
我不明白为什么


任何形式的帮助都会很棒,谢谢

为主题添加泛型类型

private ngUnsubscribe: Subject<any> = new Subject();
private-ngUnsubscribe:Subject=新主题();

主题
类在TypeScript中有一个泛型类型参数。这意味着,只能通过传递其他类型参数来创建此类的实例,如下所示:

private ngUnsubscribe: Subject<MyClass> = new Subject();
private-ngUnsubscribe:Subject=新主题();
安装

npm install @types/googlemaps@3.39.12 --save-dev

谢谢它起作用了!你从哪里弄到这件事的?我需要更多关于这方面的信息:pYou're welcome:-)有一些关于ReactiveX的书,但好的起点如下:。关于泛型类型参数,请查看TypeScript文档:
any
。几乎总是有更准确的类型。如果你真的不知道或者不知道类型是什么,那就考虑使用新的代码<代码>未知<代码>。