2011-08-27 31 views
0

我工作的一个煎茶触摸应用程序,目前没有使用控制器之外。我想使用Ext.Router将访问者带到面板中的特定卡。我已经看到了可以在不使用严格的MVC设置的情况下使用Ext.Router的建议。但是,在API中的例子看起来是这样的(见:http://dev.sencha.com/deploy/touch/docs/?class=Ext.Router):煎茶:使用Ext.Router MVC结构

map.connect('dashboard', {controller: 'home', action: 'index'}); 

有没有一种办法,例如,把一个函数变成map.connect,将显示在面板的特定卡?

第二个问题:就是它甚至值得尝试这种搏斗,或更新与控制器的应用程序将是更容易? (这是在发展的早期阶段,一个非常小的应用程序,并很可能有3个控制器,如果我们去这条路线。)

回答

0

路由器是有点儿嫁控制器并没有真正提供一个方式做你“问。如果你正在尝试做的是显示基于URL的哈希卡,然后用雅控制器去导致其容易实现..如果你一意孤行上不使用控制器由于某种原因涉及到的唯一的事情头脑是Ext.History在URL哈希变化时触发'更改'事件,您可以监听该事件并采取适当的操作。

+0

谢谢,这几乎回答我的问题。我只会转向使用控制器。 – bjudson

1

我有同样的问题,是一意孤行,因为我没有时间去重组他们给我的代码不使用的控制器。就像所选择的帖子不情愿地建议我使用Ext.History类。如果你把这个在你的onReady功能就会激活myPanel面板的网址:www.mypage.com/#my-url-slug

function initialiseHistory() { 
    Ext.History.init(); 
    urlToken = Ext.History.getToken(); 
    if(urlToken == 'my-url-slug') { 
     Ext.getCmp('tabpanel').setActiveItem('myPanel', false); 
    } 
} 

脏我知道..但做的工作。