在 secha 触摸 MVC 模式中从控制器调用视图
call a view from controller in secha touch MVC pattern
我想渲染一个view
,当我单击另一个view
上的按钮时创建。
这是我的控制器代码,我正在遵循MVC architecture
Ext.define('demo.controller.LoginController' , {
extend: 'Ext.app.Controller',
config: {
refs:{
loginAction: 'button[action=login]'
},
control:{
loginAction: {
tap:'loginProcess'
}
}
},
loginProcess:function(button,e,opts){
// Render View here
}
});
我已经搜索过,我遇到了getMainView().push()
和Ext.ViewPoart.add()
但它不起作用。根据 MVC 模式,应该如何从控制器调用此视图?
编辑
profilecontainer
代码
Ext.define('demo.view.ProfileContainer',{
extend:'Ext.Panel',
xtype:'profilecontainer',
requires: [
'Ext.Label'
],
config: {
items:[{
xtype:'label',
html:'hi'
}]
}
});
如果您正确设置了它们,您尝试过的两种方法都应该有效。
首先,如果getMainView().push(newView)
是Ext.navigation.View
,mainView
将起作用。 请参阅此方法的文档:http://docs.sencha.com/touch/2.2.1/#!/api/Ext.navigation.View-method-push
你也可以使用 Ext.Viewport.setActiveItem(newView)
,假设你没有错别字(你的帖子说ViewPoart
(。 (Ext.Viewport.add
会将面板添加到视口,但不会将其设置为布局中的活动卡片(
如果这些都不起作用,则您可能没有正确配置控制器。 如果是这种情况,请确保正在调用loginProcess
方法。 如果不是,则您的选择器 button[action=login]
不正确。
相关文章:
- 由控制器调用的服务更改时,Angular未更新视图
- 概念验证模型控制器调用正确的实例
- 角度.js - 识别通过路由或 ng 控制器调用的控制器
- 在 angularJs 中从控制器调用同时$http服务
- 从另一个控制器调用一个控制器
- 在控制台中隐藏AJAX控制器调用
- 如何从指令的控制器调用依赖注入服务的嵌套方法
- 将全局变量从控制器调用到HTML视图AngularJS
- 将数据从控制器调用到HTML视图AngularJS
- 从 AngularJS 中的父控制器调用指令的方法
- 从 Angular 控制器调用引导模式
- 从控制器调用特定指令实例的函数
- 从另一个文件 AngularJS 中的另一个控制器调用函数
- 如何在 angularjs 中从一个控制器调用另一个控制器的函数
- AngularJS + Ionic - 如何从第一个控制器调用第二个控制器上的方法
- 如何从 Angular 上的控制器调用指令的函数
- AngularJS,ng-repeat+过滤器从控制器调用
- 使用链接从不同的控制器调用操作
- Angularjs,如何从另一个控制器调用控制器
- 根据条件从 Rails 控制器调用 jQuery 函数