我想将indexedDB polyfill与编译为 Javascript 的 Dart 代码一起使用。当我刚刚添加所需的脚本时,dart2js 代码无法将window.indexedDB
属性识别为 IDBFactory 实例并生成UnknownJavaScriptObject
拦截器。
我试图在polyfill的元素上强制constructor.name,从indexedDB
:
var shimIndexedDB = {
/**
* Force correct constructor name.
*/
constructor: function IDBFactory(){},
/**
* The IndexedDB Method to create a new database and return the DB
* @param {Object} name
* @param {Object} version
*/
open: function(name, version){
这是向前迈出的一步,拦截器是正确的。不幸的是,当我向 IDBOpenDBRequest 添加类似的构造时,它的对象也得到了 IDBFactory 拦截器。
如何正确连接对象和拦截器?