Angular 角度6-ForkJoin没有导出的成员
我已经更新到Angular 6,并且我正在尝试使用ForkJoin,因此在我的服务中,我有:Angular 角度6-ForkJoin没有导出的成员,angular,typescript,rxjs,Angular,Typescript,Rxjs,我已经更新到Angular 6,并且我正在尝试使用ForkJoin,因此在我的服务中,我有: import { forkJoin } from 'rxjs/observable/forkJoin'; 但它不承认这一点,我得到: ...ForkJoin has no exported member 如何解决这个问题?RxJS 6有新的更简单的导入路径,并且不使用可链接的操作符,而是使用可管道的操作符。这使得库作为一个整体更容易摇晃,并将产生更小的包 更改您的导入如下,它应该工作 import
import { forkJoin } from 'rxjs/observable/forkJoin';
但它不承认这一点,我得到:
...ForkJoin has no exported member
如何解决这个问题?RxJS 6有新的更简单的导入路径,并且不使用可链接的操作符,而是使用可管道的操作符。这使得库作为一个整体更容易摇晃,并将产生更小的包 更改您的导入如下,它应该工作
import { forkJoin } from 'rxjs';
升级到angular时,rxjs上没有更多示例
// creation and utility methods
import { Observable, Subject, pipe } from 'rxjs';
// operators all come from `rxjs/operators`
import { map, takeUntil, tap } from 'rxjs/operators';
回答来源-将导入更改为-
import {forkJoin} from 'rxjs';
Rxjs 6以及更简单的导入路径现在有了更易于使用的操作符方法。您现在不必使用可观察补丁
因此,不是:
return Observable.forkJoin( this.http.get('jsonplaceholder.typicode.com/posts'), this.http.get('jsonplaceholder.typicode.com/users') );
您可以简单地使用:
return forkJoin(this.http.get('jsonplaceholder.typicode.com/posts'), this.http.get('jsonplaceholder.typicode.com/users'));
希望这有帮助 service.ts:
import { HttpClient } from '@angular/common/http';
import {forkJoin} from 'rxjs';
constructor(private http: HttpClient) { }
getDetails(){
let url1 ="../assets/sample.json";
let url2 ="../assets/sampledata.json";
//return this.http.get(url);
return forkJoin(this.http.get(url1),
this.http.get(url2));
}
组件1.ts:
import { Component,OnInit } from '@angular/core';
import { CommonServiceService } from './common-service.service';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
second: any;
title = 'app';
mydata:any;
constructor(private service: CommonServiceService) {}
ngOnInit(){
this.service.getDetails().subscribe(data=>{
this.first= data[0];
console.log(this.mydata);
this.second = data[1];
console.log(this.second);
})
}
}
尝试导入“rxjs/add/observable/forkJoin”,我已经为angular v6和rxjs v6添加了下面的答案。希望这有助于回答这个问题@法塔赫·穆罕默德检查答案。导入的方式发生了很大的变化hh,好的,谢谢你,我还没有更新到第六版。我试过了,但是Observable不知道forkJoin?-retrieveSeveral(){return Observable.forkJoin(this.http.get('),this.http.get(');}我看到答案被接受了。能否解决评论中提到的问题@Craig2018Well,您回答了我的问题,尽管我的代码由于其他原因无法工作:retrieveSeveral(){return Observable.forkJoin(this.http.get('jsonplaceholder.typicode.com/posts')、this.http.get('jsonplaceholder.typicode.com/users');}