如何在EXTJS中获取控制器的引用?
Sencha 模板为现代应用程序生成主视图,如下所示:
第一个
我不明白的第一件事是有两个控制器(main
和phone-main
)。我想phone-main
就像它的名字暗示的电话。但现代工具包不就是电话吗?在这两个容器中的哪一个放置用户定义的函数?
无论如何,我在main
控制器中有一些函数,我想获得该控制器的引用,因为我想从另一个控制器调用这些函数。我试图获得主控制器的引用,如:
aa = Ext.getCmp('main');
ref = aa.getController();
但这给了我对phone-main
而不是main
控制器的引用。
我也试探着:
ref = MyApp.app.getController('main');
但是,这根本不起作用。同样的情况是:
ref = MyApp.app.getController('MyApp.view.main.MainController');
1条答案
按热度按时间7ivaypg91#
在此示例中,将根据设备(电话或台式机)连接相应的ViewController:
只需在chrome开发者工具中单击“切换设备工具栏”,取决于设备将打印'fooMainValue'或'fooPhoneValue'属性。更多内容请阅读此处。“在这两个容器中的哪一个中放置用户定义的函数?”=〉这意味着您可以为电话和桌面设备使用两个不同的控制器,或者您可以创建一个基类ViewController,并使用自定义逻辑扩展桌面和电话控制器,以便不同的设备。常规方法/属性将放置在父(基)控制器中,自定义方法/属性将放置在子控制器类中。
“但不是现代工具包的手机?”=〉嗯.. AFAIK他们试图开发一些新的东西..阅读这从前内部人士.