#javascript #html #angular #rxjs
#javascript #HTML #угловой #rxjs
Вопрос:
Как объединить наблюдаемые с помощью combineLatest . combineLatest не определен
Я использую angular js 7. Я хочу ограничить строковый параметр запроса, но когда я напишу obserable.combinelaste([]), он выдаст ошибку.
import { Component, OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { Observable, of, observable } from 'rxjs'
import { combineLatest } from 'rxjs/observable/combineLatest';
@Component({
selector: 'app-githubfollowers',
templateUrl: './githubfollowers.component.html',
styleUrls: ['./githubfollowers.component.css']
})
export class GithubfollowersComponent implements OnInit {
constructor(private rout:ActivatedRoute ) { }
ngOnInit() {
Observable.combineLatest([ this.rout.paramMap,
this.rout.queryParamMap
]);
this.rout.paramMap.subscribe(prams=>{
});
this.rout.queryParamMap.subscribe(prams=>{
});
}
}
Ответ №1:
Вы импортируете неправильно. Вы использовали импорт для RXJS версии 5.
Для RxJS версии 6 вы должны использовать этот импорт :
import { combineLatest } from 'rxjs';
Для устранения следующего сообщения об ошибке :
ngOnInit() { Observable.combineLatest([ this.rout.paramMap, this.rout.Параметр запроса ]); Свойство ‘combineLatest’ не существует для типа ‘typeof Observable
Вы можете использовать combineLatest
следующим образом :
combineLatest(this.rout.paramMap, this.rout.queryParamMap)
И вам, вероятно, придется потратить некоторое время, чтобы прочитать, как его использовать: https://www.learnrxjs.io/operators/combination/combinelatest.html
Комментарии:
1. когда я добавлю это, то покажу ngOnInit() { Observable.combineLatest([ this.rout.paramMap, this.rout. Параметр запроса ]); Свойство ‘combineLatest’ не существует для типа ‘typeof Observable
2. Я также использую angular js7