2012-05-11 6 views
0

Javascript를 사용하고 IndexedDb에 문제가있는 Metro 응용 프로그램을 만들려고합니다. 객체 저장소를 만들 수 없습니다. 내 코드는 아래와 같습니다. 나는 open() 함수가 성공했을 때 이것을하고있다.Windows 8 IndexedDB createObjectStore

dbReq.onsuccess = function (evt) { 
    var txn = evt.target.transaction; 
    var db = evt.target.result; 
    if (!db.objectStoreNames.contains("test")) { 
    var store = db.createObjectStore("test"); 
    } 
} 

때마다, 그들이 얘기

0x800a139e - JavaScript runtime error: [object IDBDatabaseException]

Over here를 말한다 'createObjectStore'호출에 예외가 발생하고 너무 볼 수있는 좋은 예입니다,하지만 여전히 도움이되지 않았다 나를. 컨트롤이 'if'문 안의 한 줄의 코드에 도달 함을 알 수 있습니다. 따라서 'db'는 null이 아니며 유효합니다. 그러나 트랜잭션이 null 인 것을 보았습니다. 문제가되는지 또는 현재 유효한 트랜잭션을 다시 받아야한다고하더라도 확실하지 않습니다.

답변

0

왜 작동하지 않았는지 확실하지 않습니다. 로밍 설정으로 전환하면 사용하기가 매우 쉽습니다.

roamingSettings.values[SETTING_NAME] = SETTING_VALUE; 

은 물론, 읽으려면

var temp = roamingSettings.values[SETTING_NAME];