如果登录Ember.js不同的意见

时间:2012-02-01 20:13:50

标签: javascript ember.js

我正在尝试Ember.js(之前是SproutCore)。如何在API调用后更改视图?

App.userController = Ember.ArrayController.create({
    loadUser: function () {
        var self = this;
        $.post("/api/user/auth/", {user:'user',password:'pass'},function(user,code){
            if (code == 'success') {
                App.User.create(user);
            }
        });
    }
});
App.userController.loadUser();

我的观点:

<script type='text/x-handlebars'>
    <div class='span10'>
        {{#if App.user }}
            <h1>User</h1>
        {{else}}
            <h1>no User </h1>
        {{/if}}
    </div>
</script>

在我收到Ember代码的回复之前,它将运行#if App.user。如果我有来自通话的用户,我可以以某种方式更改视图吗?

2 个答案:

答案 0 :(得分:0)

我不确定我的问题是否有足够的细节,但我认为你想做的是:

if (code == 'success') {
    App.user = App.User.create(user);
}

答案 1 :(得分:-3)

将此添加到您的ApplicationController:

layout :layout_switcher

private

def layout_switcher
  user_signed_in? ? 'application' : 'logged_out'
end