4

Ext.RouterにURLへの変更を登録させるのに問題があります。senchatouchサイトのモデルビューコントローラーの例からアプリケーションを開始しました。

Ext.setup({
    tabletStartupScreen: 'tablet_startup.png',
    phoneStartupScreen: 'startup.png',
    icon: 'icon.png',

    onReady: function() {
       KOI.views.viewport = new KOI.views.Viewport();
    }
});

そして、私はルートファイルを持っています(アプリの前にロードされました)

Ext.Router.draw(function(map) {
      map.connect("main", { controller: 'menu', action: 'index' });
});

これはコントローラーです

KOI.controllers.menus = new Ext.Controller({
    index: function(options) {
        KOI.views.viewport.setActiveItem(KOI.views.mainMenu);
    }
});
Ext.regController('menu', KOI.controllers.menus);

ただし、URLをhttp://myapp.com/#mainに変更しても、コントローラーは機能しますが、何も起こりません。私が欠けているアイデアはありますか?どんな助けでも大歓迎です。Ext.routerのドキュメントはあまりなく、何が起こっているのかをデバッグするための良い方法がわかりません。

4

1 に答える 1

1

Ext.setupdomがロードされてアクセス可能になったときに、コールバック関数Ext.onReadyを呼び出す以外に何もしません。

Ext.regApplicationただし、新しいを作成し、構成Ext.Applicationオブジェクトを渡します。

の一部はとExt.Applicationです。履歴サポートを有効にしている場合はそれを設定してから、を呼び出します。Ext.Application.onBeforeLaunchExt.Application.launchonBeforeLaunchlaunch

launchfalseが返されない場合はonBeforeLaunch、先に進みExt.redirect、最後の履歴アイテム/トークン、defaultUrlまたは他のすべてが失敗した場合に呼び出します{controller: 'application', action: 'index'}

于 2011-07-02T20:32:17.273 に答える