【发布时间】:2016-02-28 11:52:37
【问题描述】:
我正在尝试通过在 SauceLabs 中运行它们来修复 Internet Explorer 中 sklad 库的失败测试。不幸的是,我发现对象存储的 autoIncrement 属性始终未定义,但我找不到任何证据表明该属性在 IE 中已损坏。还是我错过了什么?
var sDBName = "ADatabase" + Date.now();
var nDBVersion = 1.0;
var req = indexedDB.open( sDBName, nDBVersion );
req.onsuccess = function(evt) {
var tr = evt.target.result.transaction(['MyObjectStore'], 'readwrite'); // reaonly
tr.oncomplete = function () {
console.log('transaction completed')
}
var objStore = tr.objectStore('MyObjectStore');
console.log('objStore', objStore);
// expect to get true, but it's undefined
console.log('objStore.autoIncrement', objStore.autoIncrement);
console.log('objStore.keyPath', objStore.keyPath);
}
req.onupgradeneeded = function(evt) {
console.log('upgradeneeded')
var hDBHandle = evt.target.result;
var sStoreName = "MyObjectStore";
var oDBOptions = { keyPath : "RecordID", autoIncrement : true };
var oStore = hDBHandle.createObjectStore( sStoreName, oDBOptions );
var oIxOptions = { unique: false, multientry: false };
oStore.createIndex( "SortByTitle", "DeckTitle", oIxOptions );
oStore.createIndex( "SortByDesc", "Description", oIxOptions );
console.log('upgraded')
}
【问题讨论】:
-
我刚刚在 MS 错误跟踪器中发现了同样的问题,但它已于 2012 年关闭,错误应该已在 IE10 中修复:connect.microsoft.com/IE/Feedback/Details/772726
-
是的,似乎是一个错误。功能在那里,用于检查商店属性的属性没有公开。
-
@JoshuaBell 唯一可悲的是没有人重新打开 Microsoft tracker 中的错误
标签: html internet-explorer-11 indexeddb saucelabs