Ember JS:我可以让我的UI状态持久吗?

时间:2014-07-16 21:40:41

标签: ember.js local-storage ember-cli

我的ember应用程序左侧和右侧的画布导航。

状态由操作触发的几个简单属性控制。

模板:

<a {{action 'leftToggle'}} class="left-blade">Debtor List</a>
<a {{action 'rightToggle'}} class="right-blade">Acivity</a>

控制器:

export default Ember.Controller.extend({
    isLeft: false,
    isRight: false,

    actions: {
        leftToggle: function() {
            this.toggleProperty('isLeft');
        },
        rightToggle: function() {
            this.toggleProperty('isRight');
        }
    }
});

我希望这些属性能够在页面重新加载时保持不变,或者如果用户导航然后返回页面。

我不确定是否将属性存储在模型中?或者使用localStorage,还是什么?看起来像使用模型只是为了存储一个简单的东西,如是矫枉过正,或者是否有更好的方法?我还在学习余烬,所以我想学习一个好习惯。

1 个答案:

答案 0 :(得分:1)

这大部分超出了Ember的范围。

持久数据发生在少数几个地方,localStoragesessionStoragecookieurl或某种记录持久服务器端和提取/更新的客户端。

这真是一个挑选你的毒药,你可以尝试使用Ember的新query-params功能并将状态添加到网址上,这将最多涉及Ember,但不是必然是最好的选择。本地存储对我来说同样容易。