Как лучше всего использовать LokiJS в моем приложении Angular 1?

Я хочу использовать LokiJS для моего приложения AngularJS v1. Я подумал, что было бы неплохо написать собственную фабрику персистентности, чтобы я мог легко изменить систему базы данных.

LokiJS имеет специальную реализацию для Angular (loki-angular.js), и в него включен сервис Lokiwork.

Чтобы ты делал? Использовать Lokiwork или лучше мою собственную систему?

Спасибо, Кристиан.

1 ответ

Решение

Вы можете создать фабрику при инициализации loki, а также на той же фабрике вы можете написать методы для создания таблицы, заполнения таблицы, получения данных из таблицы.

Таким образом, весь код, связанный с БД, находится в одном месте.

Ниже вы можете кое-что сделать для реализации lokijs в вашем приложении.

app.factory('InAppStorageUtility', ['Loki', function (Loki) {
    var db = {
        initilizeLoki: function() {
            var thisScope = this;
            var inappDb = new loki("DBName", { autosave: false });
            inappDb.loadDatabase({}, function () {
                var tableInititalized = offlineDb.getCollection('testTable');

                if (tableInititalized === null) {
                    thisScope.createTables();
                }
            });
        },
        createTables: function() {
            // Table creation logic. Give a structure of the table
            // var tableCreation = offlineDb.addCollection('testTable');
            // Provide the table structure 
        },
        insertValuesToTable: function() {
            // Insert logic for all you tables
        },
        getValuesStoredInDB: function() {
            // Retrieving values from the DB logic goes here.
            // var getTableValue = offlineDb.getCollection('testTable');
        }
    }
    return db;
}]);

Нечто подобное можно реализовать в своем приложении.

Надеюсь, это поможет вам.

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