function?insertAnObj(indexDbName,json,num)?{
????var?openRequest?=?indexedDB.open(indexDbName,1);
????openRequest.onerror?=?function(e)?{//當(dāng)創(chuàng)建數(shù)據(jù)庫失敗時(shí)候的回調(diào)
????????console.log("Database?error:?"?+?e.target.errorCode);
????};
????openRequest.onsuccess?=?function(event)?{
????????console.log("Database?created");
????????db?=?openRequest.result;?//創(chuàng)建數(shù)據(jù)庫成功時(shí)候,將結(jié)果給db,此時(shí)db就是當(dāng)前數(shù)據(jù)庫
????????//alert("this?is?:"+db);
????????//打開和userinfo相關(guān)的objectstore的事物
???????/*未打印*/
????????var?Notprint?=?db.transaction("Notprint",'readwrite');
????????/*已打印快遞單*/
????????var?Already=db.transaction("Already",'readwrite');
????????/*已打印發(fā)貨單*/
????????var?invoices=db.transaction("invoices",'readwrite');
????????/*已錄單*/
????????var?Recorded=db.transaction("Recorded",'readwrite');
????????/*已發(fā)貨*/
????????var?Shipped=db.transaction("Shipped",'readwrite');
????????/*退款管理*/
????????var?Refund=db.transaction("Refund",'readwrite');
????????switch?(num){
????????????case?0:
????????????????var?number=Notprint;
????????????????var?numb="Notprint"
????????????????break;
????????????case?1:
????????????????var?number=Already;
????????????????var?numb="Already"
????????????????break;
????????????case?2:
????????????????var?number=invoices;
????????????????var?numb="invoices"
????????????????break;
????????????case?3:
????????????????var?number=Recorded;
????????????????var?numb="Recorded"
????????????????break;
????????????case?4:
????????????????var?number=Shipped;
????????????????var?numb="Shipped"
????????????????break;
????????????case?5:
????????????????var?number=Refund;
????????????????var?numb="Refund"
????????????????break;
????????}
????????var?store=number.objectStore(numb);
????????for(var?i=0;i<json.length;i++){
????????????store.add(json[i]);//將對(duì)象添加至userinfo相關(guān)的objectstore中
????????}
????};
????openRequest.onupgradeneeded?=?function(event)?{
????????var?db?=?event.target.result;
????????//在第一次創(chuàng)建數(shù)據(jù)庫的時(shí)候,就創(chuàng)建userinfo相關(guān)的objectstore,以供后面添加數(shù)據(jù)時(shí)候使用
????????if(!db.objectStoreNames.contains('Refund')){
????????????//keyPath:Javascript對(duì)象,對(duì)象必須有一屬性作為鍵值
????????????var?store=db.createObjectStore('Refund',{keyPath:"groupId"});
????????????store.createIndex('buyerName','name',{unique:true});
????????}
????????if(!db.objectStoreNames.contains('Shipped')){
????????????//keyPath:Javascript對(duì)象,對(duì)象必須有一屬性作為鍵值
????????????var?store=db.createObjectStore('Shipped',{keyPath:"groupId"});
????????????store.createIndex('buyerName','name',{unique:true});
????????}
????????if(!db.objectStoreNames.contains('Recorded')){
????????????//keyPath:Javascript對(duì)象,對(duì)象必須有一屬性作為鍵值
????????????var?store=db.createObjectStore('Recorded',{keyPath:"groupId"});
????????????store.createIndex('buyerName','name',{unique:true});
????????}
????????if(!db.objectStoreNames.contains('invoices')){
????????????//keyPath:Javascript對(duì)象,對(duì)象必須有一屬性作為鍵值
????????????var?store=db.createObjectStore('invoices',{keyPath:"groupId"});
????????????store.createIndex('buyerName','name',{unique:true});
????????}
????????if(!db.objectStoreNames.contains('Already')){
????????????//keyPath:Javascript對(duì)象,對(duì)象必須有一屬性作為鍵值
????????????var?store=db.createObjectStore('Already',{keyPath:"groupId"});
????????????store.createIndex('buyerName','name',{unique:true});
????????}
????????if(!db.objectStoreNames.contains('Notprint')){
????????????//keyPath:Javascript對(duì)象,對(duì)象必須有一屬性作為鍵值
????????????var?store=db.createObjectStore('Notprint',{keyPath:"groupId"});
????????????store.createIndex('buyerName','name',{unique:true});
????????}
????}
}代碼有些長,? 就是我從后臺(tái)拿過來的數(shù)據(jù) 傳進(jìn)來,?? 沒有建索引的時(shí)候很正常 數(shù)據(jù)能正常存儲(chǔ)進(jìn)來,可是我一但建立了索引那么?if(!db.objectStoreNames.contains('Shipped')){
????????????//keyPath:Javascript對(duì)象,對(duì)象必須有一屬性作為鍵值
????????????var?store=db.createObjectStore('Shipped',{keyPath:"groupId"});
????????????store.createIndex('buyerName','name',{unique:true});
????????}這個(gè)表里? 包括索引里 都沒有數(shù)據(jù),調(diào)試也沒有報(bào)錯(cuò)?? !? 來大神拯救
為什么indexdb創(chuàng)建索引以后,從后臺(tái)拉過來的數(shù)據(jù)就進(jìn)不去,調(diào)試也不報(bào)錯(cuò)?
我是誰呢啊
2016-12-01 14:03:19