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.