我一直在尝试使用querying lists在Firebase上查询数据。
当我尝试类似于该文档中描述的内容时:
getMatchesFiltered(matchId: string, filter: string, sortDirection: string, pageIndex: number, pageSize: number){
let queryObservable = this.db.list('/matches', ref => ref.orderByKey(true).limitToFirst(2));
return queryObservable;
}
我收到了“类型的参数”{query:{...};}'无法分配给“FirebaseListFactoryOpts”类型的参数“错误,这导致我this helpful SO post。但是,当我尝试将上述内容更改为
时getMatchesFiltered(matchId: string, filter: string, sortDirection: string, pageIndex: number, pageSize: number): AngularFireList<Match[]>{
let queryObservable = this.db.list('/matches', ref => ref.orderByKey(true).limitToFirst(2).valueChanges());
return queryObservable;
}
并将AngularFireList添加到'angularfire2 / database'导入,我收到以下错误:
src / app / database.service.ts(7,81)中的错误:错误TS2305:模块 '“/ Users / mf / Desktop / dataJitsu / node_modules / angularfire2 / database”'有 没有导出的成员'AngularFireList'。
这告诉我,也许我有一个旧版本的angularfire2? 的确,我的package.json说,
"angularfire2": "^4.0.0-rc0",
我相信新的AngularFireList列表内容来自v.5.x.x?
然而,当我尝试更新时,它不会让我。 当我运行npm过时时,这就是我所看到的:
请注意,angularfire2的WANTED版本仍为4.0.0-rc0。
最终我的问题是: 我如何确定哪些软件包希望我的版本保持原样?换句话说,是什么阻碍了我进一步更新? 或者,如果有人知道如何在angularfire2前面解决这个问题,那么我也会听到这个问题。
答案 0 :(得分:0)
由于Version
中的Semantic Versioning(“angularfire2”:“^ 4.0.0-rc0”),通缉package.json
停留在4.0.0-rc0
作为消费者,您可以指定您的应用可以进行哪些类型的更新 在package.json文件中接受。
如果你从1.0.4开始,这就是你想要的 指定范围:
- 补丁版本:1.0或1.0.x或~1.0.4
- 次要版本:1或1.x或^ 1.0.4
- 主要版本:*或x
如果没有看到更多相关代码,很难说另一个问题。我将从checkig this post
开始