问题是,如何使用extjs5构建一个通用应用程序,在西区域内我有一个树状区域,在中心区域内我想根据treepanel项目点击添加面板。面板应该放在单独的文件中,并且应该将它自己的ViewControllers放在单独的文件中。区域位于视口中。视口具有自己的MainViewController。
我试图从MainViewController获取ViewController,但遗憾的是我找不到合适的解决方案。
我还试过而不是几个ViewControllers创建公共控制器并从MainViewController调用他们的方法,如下所示:
MyApp.app.getController(' ConnectionController&#39)。showPanel();
但是我无法知道如何从它的控制器中获取视图 - 所有下面的返回都未定义:
console.log(Ext.ComponentQuery.query('#connection')[0]);
console.log(Ext.getCmp('connection'));
console.log(this.lookupReference('connection'));
毕竟我认为这是一个错误的沟通模式。任何建议将不胜感激。
答案 0 :(得分:0)
我终于明白了。要在MainViewController和Panel之间进行通信,可以从视图控制器创建已定义的面板,如下所示:
var panelToAddName = Ext.create('MyApp.view.Panel1View', {});