我正在尝试在视图之间切换应用程序,具体取决于用户是否登录。该应用程序将首先尝试加载主视图,然后如果您未登录,则在控制器的其中一个启动功能中将切换到登录表单。这部分没有任何问题。
问题是,当用户填写登录表单并登录时,视图确实更改为主视图,但它没有收到事件(单击注销按钮什么也不做。)我知道这不是视图的问题本身,因为如果在没有切换到登录屏幕的情况下加载主视图,它将检测到单击注销按钮。
在我的一个控制器中:
launch: function() {
this.session = localStorage.getItem('session');
if(!this.session) {
Ext.Viewport.remove(Ext.Viewport.getActiveItem(), true);
Ext.Viewport.add(Ext.create('App.view.Login'));
}
},
当登录发生时,我像这样切换到主视图(包括注销按钮)
Ext.Viewport.remove(Ext.Viewport.getActiveItem(), true);
Ext.Viewport.add(Ext.create('App.view.Main'));
Ext.Msg.alert('Logged In', 'Login successful.');