2015-09-07 86 views
1

我正在嘗試編寫一個使用pouchdb作爲脫機DB(不含sqlite)的cordova應用程序。我的應用程序適用於所有瀏覽器和android,但不適用於ios。我不確定這是爲什麼,以及如何處理!這裏是我的代碼初始化數據庫:pouchdb無法在ios safari上工作

app.onDeviceReady = function() { 
try { 
    console.log("starting db"); 
    window.offline_db = new PouchDB('offline_db'); 
    if (window.offline_db.adapter) { 
     console.log("db started!"); 
    } 
    offline_db.get("op_settings", function(err, doc) { 
     if (err) { 
      return console.log(err); 
     } 
     console.log(doc); 
    }); 
} catch (e) { 
    console.log(e); 
}}; 

這不返回文檔,即使當我保存它說,它已成功保存的文檔,它只是給出了一個承諾,但沒有結果。

同樣在Safari瀏覽器的Mac,我可以看到在調試器中的DB內容,但在Safari IOS我沒有資源

Safari Mac screenshot

+0

它看起來像承諾沒有被退回/回調永遠不會被解僱,但也沒有錯誤! – user1221612

回答

0

似乎在這個選項卡中,你已經把你的回調函數的地方選項傳遞(可選): PouchDB get

請嘗試

offline_db.get("op_settings", null, function(err, doc) 

它應該工作。

+0

我從你分享的鏈接中獲取了代碼(它不會傳遞null),無論如何我只是試了一下,但它不起作用。 – user1221612

+0

也正如我所說,它是在所有平臺上工作除了ios – user1221612

+0

然後,我只能建議調試器; :) –

相關問題