indexedDB에는 spec이 있으며 인덱싱 된 데이터베이스에 동 기적으로 액세스 할 수 있지만 아직 구현되지 않았 음을 나타냅니다.indexedDB를 동 기적으로 액세스하려면 어떻게합니까?
가 수동으로 동기화 할 수있는 방법이 있다면 난 그냥 궁금 해서요,
내 자바 스크립트는 다음과 같습니다,
var trans = databaseAsync.transaction(["mapTile"], IDBTransaction.READ_WRITE);
var store = trans.objectStore("mapTile");
var keyRange = IDBKeyRange.bound(evt.data[0], evt.data[0]);
var cursorRequest = store.openCursor(keyRange);
// can you put some kind of wait in here?
cursorRequest.onsuccess = function(e)
{
var result = e.target.result;
if(!!result == false)
{
}
}
그래서 당신은이 onsuccess는 때까지 기다려야하기 위해 거기에 뭔가를 넣을 수 있습니다 계속하기 전에 메서드가 호출 되었습니까?
나는이 이상이 방법 내부에 랩되는 코드입니다하고 싶은 이유,
dojo.extend(esri.layers.ArcGISTiledMapServiceLayer, {
getTileUrl : function(level, row, col)
{
// blah
return url;
}
는 그래서, (내 웹 페이지의지도에 타일을로드)를 ESRI 타일 층입니다 그 방법은 특정 타일에 대해 바로 URL을 반환해야합니다. 이미 데이터베이스에 캐시, 또는이되지 않은 경우에서 이미지를로드 할 URL 것 중 하나 이전에 캐시 된 경우 BASE64DATA 데이터베이스에서 데이터입니다
data:image;base64,*BASE64DATA*
.
이전에 localStorage를 사용하여 동 기적으로 작동했지만 5MB의 제한이 있으므로 indexedDB를 실험해볼 것이라고 생각했습니다.
[게시물에 서명 또는 태그 라인을 추가하지 마십시오.] (http://stackoverflow.com/faq#signatures). – meagar