1

全て:

私は Lokijs の初心者です。永続化されたデータベースとコレクションを再ロードするにはどうすればよいでしょうか?

データベースとコレクションを構築し、それを永続化するとします(ボタンをクリックして永続化プロセスをトリガーするなど):

    var db = new Loki("mydb");
    var users = db.addCollection('users');
    // we bind this to a button click event
    function saveUser(){
        users.insert({
          name: 'joe'
        });
        users.insert({
          name: 'john'
        });
        users.insert({
          name: 'jack'
        });
        db.saveDatabase();
    }

次に、このページを更新すると、「mydb」と「users」を新しいものを作成するのではなく、永続化からロードするにはどうすればよいですか (var db = new Loki("mydb"); を再度使用します)、確認する API はありますか?データベースが存在する場合

ありがとう

4

1 に答える 1

2

これはよくある質問です。デフォルトの方法は、ここに示すように loadHandler を使用することです。基本的に、既存のファイルに基づいてデータベースを初期化する loadHandler 関数を渡す必要があります。

var db = new loki('test', 
      {
        autoload: true,
        autoloadCallback : loadHandler,
        autosave: true, 
        autosaveInterval: 10000
      }); 
var users = null;
function loadHandler() {
    users = db.getCollection('users');
    if (!users) {
        users = db.addCollection('users');
    }
}

お役に立てれば。

于 2016-05-12T19:08:05.740 に答える