Loki JS не сохраняет данные в Ionic

Я использую LokiJS для сохранения в локальном хранилище (ну, я пытаюсь) . То, что я хочу сделать, это приложение ToDo, мой контроллер выглядит следующим образом:

.controller('Dash', function($scope) {

    var db = new loki('loki.json');
    $scope.name="";
    $scope.lname="";

    var users=db.getCollection('users');

    if (users==null) {
      $scope.message="It's null";
      var users = db.addCollection('users');
    }else{
      $scope.message="It's ready";
    }

    $scope.insert=function(namesI, lnameI){
      users.insert({
        name: namesI,
        lname:lnameI
       }); 

   }

Проблема в том, что каждый раз, когда я проверяю его, появляется сообщение "Это ноль". Хотя раньше я уже вставил данные. Я имею в виду, что каждый раз, когда я запускаю приложение, создается база данных.

Как я могу сохранить данные?
* Я не использую никакой плагин Cordova.

1 ответ

Вы не предоставляете loadHandler функция, поэтому вы пытаетесь получить доступ к коллекциям до того, как Loki закончит загрузку файла json. Посмотрите на этот пример для разъяснения о том, как использовать autoLoadHandler.

Также имейте в виду, что на каком-то этапе вам нужно позвонить db.saveDatabase() чтобы сохранить, или же вам нужно предоставить autoSaveInterval значение при создании экземпляра Loki.

Другие вопросы по тегам