Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 错误:属性';订阅';不存在于类型';运算符函数<;{},{}可观察<;任何>&燃气轮机;_Javascript_Angular_Typescript_Asynchronous_Rxjs - Fatal编程技术网

Javascript 错误:属性';订阅';不存在于类型';运算符函数<;{},{}可观察<;任何>&燃气轮机;

Javascript 错误:属性';订阅';不存在于类型';运算符函数<;{},{}可观察<;任何>&燃气轮机;,javascript,angular,typescript,asynchronous,rxjs,Javascript,Angular,Typescript,Asynchronous,Rxjs,为什么我不能订阅concat()运算符的结果,即使它看起来与 我已经尝试改为concatMap,或Concatal,但我有更多的问题,这个解决方案是迄今为止我发现的最优雅的解决方案 ngOnInit() { const trendingRentals = this.rentalService.getRentals().pipe(delay(500)); const commonRentals = this.rentalService.getCommonRentalsTest()

为什么我不能订阅concat()运算符的结果,即使它看起来与

我已经尝试改为concatMap,或Concatal,但我有更多的问题,这个解决方案是迄今为止我发现的最优雅的解决方案

ngOnInit() {
    const trendingRentals = this.rentalService.getRentals().pipe(delay(500));
    const commonRentals = this.rentalService.getCommonRentalsTest().pipe(delay(1000));
    const luxuryRentals = this.rentalService.getLuxuryRentalsTest().pipe(delay(1500));

    const concatenation =  concat( [trendingRentals, commonRentals, luxuryRentals]);
    concatenation.subscribe(
      //Print result
    )
  }

    //All get request are equal but with a different endpoint
    public getCommonRentalsTest(): Observable<any> {
      return this.http.get('/api/v1/rentals/common');
    }
ngOnInit(){
const trendingRentals=this.rentalService.getRentals().pipe(延迟(500));
const commonRentals=this.rentalService.getCommonrentalTest().pipe(延迟(1000));
const luxuryRentals=this.rentalService.getLuxuryRentalsTest().pipe(延迟(1500));
const concatenation=concat([trendingRentals,commonRentals,luxuryRentals]);
连接.subscribe(
//打印结果
)
}
//所有get请求都相等,但具有不同的端点
public getCommonRentalTest():可观察{
返回这个.http.get('/api/v1/rentals/common');
}

expedted的结果是按顺序获取所有租金,然后按相同顺序将其推送到结果数组

看起来您需要的是,而不是:

该操作符与另一个可观察对象的
管道
方法一起使用。例如:

const stream1$: Observable<any> = ...;
const stream2$: Observable<any> = ...;

const concatenated = stream1$.pipe(
    concat(stream2$)
);
const stream1$:可观察=。。。;
const stream2$:可观察=。。。;
const concatenated=stream1$.pipe(
康卡特(2美元)
);

看起来您需要的是,而不是:

该操作符与另一个可观察对象的
管道
方法一起使用。例如:

const stream1$: Observable<any> = ...;
const stream2$: Observable<any> = ...;

const concatenated = stream1$.pipe(
    concat(stream2$)
);
const stream1$:可观察=。。。;
const stream2$:可观察=。。。;
const concatenated=stream1$.pipe(
康卡特(2美元)
);

先生,您是上帝:')非常感谢您!!!!因此,基本上我必须编写类似于const stream1$:Observable=//我的http请求函数const concatenated=stream1$:pipe(concat(stream2$,stream3$,…,streamX$)或const concatenated=stream1$:pipe(concat(stream2$),//…concat(streamX$),)谢谢!!你是上帝:“)非常感谢你!!!!因此,基本上我必须编写类似于const stream1$:Observable=//我的http请求函数const concatenated=stream1$:pipe(concat(stream2$,stream3$,…,streamX$)或const concatenated=stream1$:pipe(concat(stream2$),//…concat(streamX$),)谢谢
concat
不接受数组,您应该单独传递参数
concat
不接受数组,您应该单独传递参数。