ExtJs 4.2从扩展控制器访问变量
ExtJs 4.2 Access variable from extended Controller
我有两个这样的控制器:
控制器1(MAIN)
Ext.define('App.MainController', {
extend: 'Ext.app.Controller',
models:[
//some_models
],
stores:[
//some_stores
],
views: [
//some_views
],
refs: [],
init: function() {
this.TipoDetalle='';
this.control({
'GridConcursos':{
itemdblclick:this.onDblClickRow
}
});
},
//some_code
onDblClickRow:function(element, record, item, index, e, eOpts){
this.TipoDetalle=record.data['tipo_concurso'];
}
//some_code
});
控制器2(子控制器)
Ext.define('App.SubController', {
extend: 'App.MainController',
models:[
//some_models
],
stores:[
//some_stores
],
views: [
//some_views
],
refs: [],
init: function() {
this.control({
'FichaDetalle':{
beforeshow:this.onBeforeShow
}
});
},
//some code
onBeforeShow:function(){
//Some way to print the variable TipoDetalle from the main controller
}
});
在第二个控制器上,在函数onBeforeShow中,我想打印或显示第一个控制器TipoDetalle的变量,但我不知道是否可能,如果可能,我不知道如何在第二控制器中获取变量
您可以使用以下语法:
<appname>.app.getController(<controller's full name>).<var name>
在你的情况下,它将是
App.app.getController('App.MainController').TipoDetalle
确保您在控制器中初始化TipoDetalle变量,如下所示:
Ext.define('App.MainController', {
extend: 'Ext.app.Controller',
TipoDetalle:'',
...
相关文章:
- 从AngularJS中的另一个文件中的控制器访问服务
- 如何从AngularJs中的另一个控制器访问控制器
- 从控制器访问mixin属性
- 如何从 angularjs 控制器访问$resource
- AngularJS:从控制器访问特定的指令范围
- 从角度控制器访问模板元素
- 可以't从另一个控制器访问$rootScope
- 如何创建可以使用 AngularJS 上的控制器访问的帮助程序类
- 从 Angular 控制器访问不同模块中的角度服务
- 从服务器控制器访问 MEANjs 中的 API 端点
- 从 angularjs 控制器访问外部 JavaScript 函数和类
- 如何从父指令/控制器访问指令范围
- 角度指令 - 需要从指令控制器访问所需的控制器
- Angular js 指令控制器访问范围属性,但返回未定义
- AngularJS :如何从相同的指令控制器访问指令范围
- 通过控制器访问$rootScope不起作用
- 无法从子控制器访问父控制器的方法
- 有没有办法从木偶.js中的显示控制器访问在列表控制器中创建的布局区域
- 如何与AngularJs在控制器之间共享$scope,我们可以从另一个控制器访问一个控制器的$scope
- 如何以角度将$scope从一个控制器访问到另一个控制器