Handlebars模板中的Ember实时值

时间:2013-10-21 09:29:03

标签: javascript ember.js

我正在创建一个简单的ember应用程序,它从laravel 4 restful api获取数据并使用其身份验证功能。我想要创建的是当用户登录时,指向ember中的登录页面的菜单项需要刷新而不重新加载页面并更改为指向注销控制器的注销链接。我在应用程序控制器中使用简单的标志概念来检查true或false值以显示相应的菜单,但该概念中的缺陷是它需要被刷新。

当用户登录时,如果在ember应用程序中,登录菜单会自动更改为退出菜单。

这是我到目前为止所做的代码

应用程序控制器:

App.ApplicationController = Ember.Controller.extend({
login_check: localStorage.checklogin
});

把手应用程序模板

{{#if login_check}}
    <li>{{#linkTo "logout" }}Logout{{/linkTo}}</li>
{{else}}
    <li>{{#linkTo "login" }}Login{{/linkTo}}</li>
{{/if}}

1 个答案:

答案 0 :(得分:1)

您需要使login_check成为计算属性,因此ember会重新评估它并通知观察者。 认为localStorage是一个App属性......

App.ApplicationController = Ember.Controller.extend({
     login_checkBinding: 'App.localStorage.checklogin'
});