从Html视图更新触发更新到动态视图,将其保存到LocalStorage loki js

时间:2015-08-30 09:15:34

标签: javascript angularjs html5 lokijs

我有一个角度工厂类User,它通过动态视图获取实例,从视图填充数据到用户变量,然后绑定到视图。

我需要更新localstorage,当userView.Name发生更改时绑定到视图输入type ='text',即文本字段中值的任何更改都会直接更改用户实例中的文本该类,然后更新将更新localStorage的动态视图?

我有一个CodePen托管的代码示例

Sample Code illustrating the problem

app.controller('TestController', ['$scope', 'Loki', 'MobileConstants', 'LocalStorageApi', 'User', 
function ($scope, Loki, MobileConstants, LocalStorageApi, User, Book) {
    LocalStorageApi.initialize();
    var userData = LocalStorageApi.UsersView.data()[0];

    var user = new User(userData);

    $scope.userView = user;
}]);

app.factory('User', ['$rootScope', function ($rootScope) {
    function User(userData) {
        User.prototype.Name = userData.nameSample;
    };

    User.prototype = {
        Name: null,
    }

    return User;
}]);

下面是代码说明问题的方式

Angular Code

Html View with data bound to it.

1 个答案:

答案 0 :(得分:2)

LokiJS在浏览器中的默认存储适配器是localstorage,因此如果您将用户保存在LokiJS集合中,您只需要调用db.saveDatabase(),它将自动更新本地存储。 换句话说,除非您保存未存储在LokiJS中的值,否则您根本不需要直接使用localStorage。