我正在跟踪
Aurelia Store
关于如何订阅商店变更流。当我导入typescript时
Subscription
rxjs
我得到一个typescript编译错误:
TS2322: Type 'import("project\node_modules\aurelia-store\node_modules\rxjs\internal\Subscription") is not assignable to type import("project\node_modules\rxjs\internal\Subscription")
代码示例:
// app.ts
import { autoinject } from "aurelia-dependency-injection";
import { Store } from "aurelia-store";
import { Subscription } from 'rxjs';
import { State } from "./state";
@autoinject()
export class App {
public state: State;
private subscription: Subscription;
constructor(private store: Store<State>) {}
bind() {
this.subscription = this.store.state.subscribe(
(state) => this.state = state
);
}
unbind() {
this.subscription.unsubscribe();
}
}
我试过了
import { Store, Subscription } from 'aurelia-store'
但这也不管用。
编辑:
你的rxjs版本(来自Aurelia和你安装的rxjs)是
一样吗?
因此,aurelia store/package.json的rxjs版本为“^6.2.2”,myprojects package.json的版本为“6.3.2”。因此,我卸载了我的rxjs版本并安装了6.2.2版本。现在typescript发出以下错误消息:
TS2322:类型
'导入(“项目/node\u模块/aurelia商店/node\u模块/rxjs/internal/Subscription”).Subscription'
'导入(“项目/节点\模块/rxjs/internal/Subscription”).Subscription'。