2

所以我初始化了一切:

var Store = new Lawnchair({table:'mightapp', adaptor:'gears'}, 
    function(s) {
    var obj = {msg: 'hooray!'};

    s.save({key: "msg", value: obj});
});

然后我注释掉这条消息以测试它是否持续存在......

var Store = new Lawnchair({table:'mightapp', adaptor:'gears'}, 
    function(s) {
    //var obj = {msg: 'hooray!'};

    //s.save({key: "msg", value: obj});
});

它没有——我做错了什么?我正在制作一个健身应用程序,我需要永久保存人们的锻炼/锻炼统计数据……我应该只做一些文件 i/o 吗?

4

2 回答 2

2

dom适配器对我来说很好用。这是我用来在应用程序重新启动时保留数据的代码。

<script type="text/javascript">
    var store = new Lawnchair({
        adapter: "dom",
        name: "testing"
    }, function(store) {
    });

    store.exists('dhaval', function(available){
        var preStr = "";

        // check whether required data is available, if not create it
        if(available){
            preStr = "data is already available, ";
        }else{
            preStr = "data is not available, ";
            var me = {
                key: 'dhaval'
            };

            // save it
            store.save(me);
        }

        // access it later... even after app restart!
        store.get('dhaval', function(me) {
            $("#data").html(preStr + JSON.stringify(me));
        });
    });
</script>

对于完整的源代码检查 git repo android-cordova-lawnchair

于 2012-06-26T04:36:02.953 回答
1

尝试将您的适配器切换到“dom”,因为我认为浏览器不再支持“gears”。

于 2012-06-25T22:52:08.923 回答