Angular 5 with RxDB (idb adaptor) threws Uncaught TypeError: winningRev is not a function error when creating database
Angular 5 with RxDB (idb adaptor) threws Uncaught TypeError: winningRev is not a function error when creating database
我正在使用 Angualr Cli 1.6.5(Angular 5.2.0) 与 RxDB 7.3.2 和 pouchdb-adapter-idb 6.4.2。
当我尝试 create/connect 到数据库时,我收到以下错误:
zone.js:192 Uncaught TypeError: winningRev is not a function
at insertDoc (index.es.js:370)
at nextDoc (index.es.js:449)
at eval (index.es.js:452)
at Map.forEach (<anonymous>)
at processDocs (index.es.js:426)
at idbProcessDocs (index.es.js:330)
at checkDone (index.es.js:354)
at IDBRequest.readMetadata [as __zone_symbol__ON_PROPERTYsuccess] (index.es.js:364)
at IDBRequest.wrapFn (zone.js:1166)
at ZoneDelegate.invokeTask (zone.js:421)
index-browser.es.js:486 Database has a global failure DOMException: Uncaught exception in event handler.
这是我调用的函数:
async getRxDB() {
this.rx_db = await RxDB.create({
name: 'testdb',
adapter: 'idb',
multiInstance: false
});
console.log(this.rx_db);
await this.rx_db.collection({name: 'fork', schema: TestDBSchema});
}
数据库模式:
const TestDBSchema = {
'title': 'test schema',
'version': 0,
'description': 'describes a simple task',
'type': 'object',
'properties': {
'name': {
'type': 'string',
'primary': true
}
}
};
我只是简单地在一个组件中调用了这个函数:
constructor(private databaseService: DatabaseService) {}
ngOnInit() {
this.databaseService.getRxDB();
}
我在互联网上搜索过,但没有找到类似的问题。
是否有人使用类似设置遇到此错误?
更新
link @lossleader 提供的确实有用,谢谢
PouchDB 6.4.2 与 broken es modules 一起发布,因为它被转译的 rollup 版本中存在错误。 (转译器错误从 import X as Y
语法中删除了 as Y
,而没有重命名局部 X 变量以防止阴影。)
PouchDB 6.4.3 现已发布到 npm 并使用汇总 0.55.1 进行了转译,fixes the bug 因此更新应该可以解决问题。
我正在使用 Angualr Cli 1.6.5(Angular 5.2.0) 与 RxDB 7.3.2 和 pouchdb-adapter-idb 6.4.2。
当我尝试 create/connect 到数据库时,我收到以下错误:
zone.js:192 Uncaught TypeError: winningRev is not a function
at insertDoc (index.es.js:370)
at nextDoc (index.es.js:449)
at eval (index.es.js:452)
at Map.forEach (<anonymous>)
at processDocs (index.es.js:426)
at idbProcessDocs (index.es.js:330)
at checkDone (index.es.js:354)
at IDBRequest.readMetadata [as __zone_symbol__ON_PROPERTYsuccess] (index.es.js:364)
at IDBRequest.wrapFn (zone.js:1166)
at ZoneDelegate.invokeTask (zone.js:421)
index-browser.es.js:486 Database has a global failure DOMException: Uncaught exception in event handler.
这是我调用的函数:
async getRxDB() {
this.rx_db = await RxDB.create({
name: 'testdb',
adapter: 'idb',
multiInstance: false
});
console.log(this.rx_db);
await this.rx_db.collection({name: 'fork', schema: TestDBSchema});
}
数据库模式:
const TestDBSchema = {
'title': 'test schema',
'version': 0,
'description': 'describes a simple task',
'type': 'object',
'properties': {
'name': {
'type': 'string',
'primary': true
}
}
};
我只是简单地在一个组件中调用了这个函数:
constructor(private databaseService: DatabaseService) {}
ngOnInit() {
this.databaseService.getRxDB();
}
我在互联网上搜索过,但没有找到类似的问题。 是否有人使用类似设置遇到此错误?
更新 link @lossleader 提供的确实有用,谢谢
PouchDB 6.4.2 与 broken es modules 一起发布,因为它被转译的 rollup 版本中存在错误。 (转译器错误从 import X as Y
语法中删除了 as Y
,而没有重命名局部 X 变量以防止阴影。)
PouchDB 6.4.3 现已发布到 npm 并使用汇总 0.55.1 进行了转译,fixes the bug 因此更新应该可以解决问题。