angular - RXJS 运算符上的 Typescript 2345
问题描述
最近,我在我的代码库中看到了很多 typescript transpile 错误。我不确定它什么时候开始,但主要的是,代码仍然运行良好。应用程序的逻辑绝对没有变化。我在代码库中观察到的最奇特的事情之一就是这个特殊的例子。
combineLatest(of(1), of(2))
.subscribe(([a,b]: [number, number]) => {
console.log(a, b);
});
这会引发 TS2345 错误。它单独说明了一些事情
[a,b] of type [number, number] => null is not assignable to type value of type [Observable<number>, Observable<number>] => null
为什么这么说?当我记录 a 和 b 时,我看到的只是 1 和 2。我没有看到 Observable 的实例。
如果有帮助,我还有一个与我的 Web 应用程序链接的 Angular 库 npm。
运行 ng 版本采购:
*Angular CLI: 8.2.1
Node: 10.15.0
OS: darwin x64
Angular: 8.2.1
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.802.1
@angular-devkit/build-angular 0.802.1
@angular-devkit/build-optimizer 0.802.1
@angular-devkit/build-webpack 0.802.1
@angular-devkit/core 8.2.1
@angular-devkit/schematics 8.2.1
@angular/cdk 8.0.2
@angular/http 7.2.15
@ngtools/webpack 8.2.1
@nguniversal/express-engine 8.1.1
@schematics/angular 8.2.1
@schematics/update 0.802.1
rxjs 6.5.2
typescript 3.5.3
webpack 4.38.0*