简体   繁体   English

Observable.zip不是一个函数

[英]Observable.zip is not a function

VM95422:27 ORIGINAL EXCEPTION: WEBPACK_IMPORTED_MODULE_3_rxjs_Observable .Observable.zip is not a function VM95422:27 ORIGINAL EXCEPTION: WEBPACK_IMPORTED_MODULE_3_rxjs_Observable .Observable.zip不是函数

Tried various imports 试过各种进口

// import 'rxjs/add/operator/zip';
// import 'rxjs/add/observable/zip-static';
// import 'rxjs/add/operator/zip';
import 'rxjs/operator/zip';

Trying to use it like that: 试着像这样使用它:

const zippedUsers: Observable<User[]> = Observable.zip<User>(this.usersObservable);

Angular 4, TypeScript 2.1.6 Angular 4,TypeScript 2.1.6

package.json: 的package.json:

"rxjs": "^5.1.0",

maybe something like 也许是这样的

import {Observable} from "rxjs/Observable";
import "rxjs/add/observable/zip";

then something like: 然后像:

Observable.zip(this.someProvider.getA(), this.someProvider.getB())
        .subscribe(([a, b]) => {
            console.log(a);
            console.log(b);
        });

RxJS 6 RxJS 6

Starting from RxJS 6... 从RxJS 6开始......

Observable creation functions Observable创建功能

such as from() , fromPromise() , of() , zip() should be imported like this: 例如from()fromPromise()of()zip()应该像这样导入:

import { from, fromPromise, of, zip } from 'rxjs';

and used as a plain function call: 并用作普通函数调用:

const data: Observable<any> = fromPromise(fetch('/api/endpoint'));

Pipeable operators 可管理的操作员

should be imported like this: 应该像这样导入:

import { map, filter, scan } from 'rxjs/operators';

and used as pipe() method arguments: 并用作pipe()方法参数:

const someObservable: Observable<number> = ...;
const squareOddVals = someObservable.pipe(
        filter((n: number) => n % 2 !== 0),
        map(n => n * n))
    .subscribe((n: number): void => ...);

5.5 rxjs: 5.5 rxjs:

import {zip} from "rxjs/observable/zip";
const zippedUsers: Observable<User[]> = zip(this.usersObservable);

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

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