0

http://dev.yathit.com/index/downloads.htmlydn.db-isw-core-e-qry-dev-raw.jsから使用

以下を実行すると、コンソールに期待される出力が表示されます

var db = new ydn.db.Storage('storage');
var id = 1234;
db.put('store-name', {foo: 'bar'}, id);
db.get('store-name', id).done(function(record) {
    console.log("record", record);
});

record Object {foo: "bar"}

ただし、省略した場合put()、コンソールは未定義を返します

var db = new ydn.db.Storage('storage');
var id = 1234;
db.get('store-name', id).done(function(record) {
    console.log("record", record);
}); 

record undefined

Chrome の開発者ツールを使用すると、Resources/IndexedDB でレコードを確認できます

レコードが取得されないのはなぜですか?

4

1 に答える 1

1

-rawフォーマットは完全なレポと実行ビルド プロセスでのみ機能するようです。ant deps開発ビルドを使用してみてください-dev

結局のところ、自動スキーマを使用しています。実行時にはdb.getデータベースが接続されていないため、次のように接続の準備ができるまで待機する必要があります。

var db = new ydn.db.Storage('storage');
db.onReady(function() {
    var id = 1234;
    db.get('store-name', id).done(function(record) {
        console.log("record before", record);
    });
    db.put('store-name', {foo: 'bar'}, id);
    db.get('store-name', id).done(function(record) {
        console.log("record after", record);
    });
})
于 2013-10-25T01:11:29.993 に答える