0

LokiJS で既存の DB を使用しようとしていますが、autoloadCallback が起動しません。

いつ起動するかを知るために使用console.log('from add collection don')していますが、決して起動せず、DBにデータを追加しようとすると失敗します。コレクション変数をローカルに設定した場合にのみ機能します。

  var user = null
      db = new loki("myuser.json",{adapter: adapter}, {
        autosave: true,
        autosaveInterval: 5000,
        autoload: true,
        autoloadCallback: function(){
            db_ready = true;
            console.log('from add collection don')
            if(db.getCollection("myaccount") == null ){
                myusers = db.addCollection("myaccount");
            }
       
        }
    });

function py_userlogin(username,password,islogin){
        myusers.insert({
            username:username,
            password:password,
            islogin:islogin
        },function(err,don){
            console.log( JSON.stringify(err) + JSON.stringify(don))
        });
        console.log(myusers.data);
        db.saveDatabase();
    }

4

1 に答える 1

3

存在しない 3 番目の変数にオプションを設定しています。次のようにする必要があります。

new loki(file, [options]);

adapter次のように、他のオプションと同じようにオプションです。

var user = null
      db = new loki("myuser.json",{
        adapter: adapter,
        autosave: true,
        autosaveInterval: 5000,
        autoload: true,
        autoloadCallback: function(){
            db_ready = true;
            console.log('from add collection don')
            if(db.getCollection("myaccount") == null ){
                myusers = db.addCollection("myaccount");
            }

        }
    });

乾杯

于 2016-09-28T13:08:56.817 に答える