我目前有2个个人资料:平板电脑和手机。 每个配置文件都加载在不同的视图中,如下所示:
Ext.define('Myapp.view.tablet.Login', {
extend: 'Ext.Panel',
alias: 'widget.loginview',
...
}
但是在app bootstrap代码中,我有以下几行:
var loginView = Ext.create('MyApp.view.Login')
Ext.Viewport.add(loginView);
这不起作用,因为我的观点现在被个人资料拆分。我现在如何请求配置文件加载的登录视图?我不想这样做:
var loginView = Ext.is.os.Phone? Ext.create('MyApp.view.phone.Login') : Ext.create('MyApp.view.tablet.Login')
因为我认为这是个人资料的重点。
答案 0 :(得分:0)
答案 1 :(得分:0)
您可能应该定义依赖于配置文件中的活动配置文件的所有视图。 典型的简单配置文件如下所示:
Ext.define('yourapp.profile.Phone', {
extend: 'Ext.app.Profile',
config: {
name: 'Phone',
controllers: ['YourController'],
views: ['Login'] // the MyApp.view.phone.Login view will be used if Phone profile is active
},
isActive: function() {
return Ext.os.is('Phone');
}
}