1

アプリケーションの戻るボタンを備えたユニバーサル タイトルバーを作成しようとしています。{xclass:mUserStories.view.titlebar} を使用して、さまざまなビューに含めています。

タイトルバーのコードは次のとおりです。

Ext.define('mUserStories.view.titlebar', {
    extend: 'Ext.TitleBar',
    id: 'narwhal',
    config: {
        docked: 'top',
        // id: 'narwhal',
        title: 'CHW Module',
        items: [{
            ui: 'back',
            text: 'Back',
            id: 'backButton'
            // hidden: true
        }]
    }
})

ただし、別のページに切り替えるときにツールバーを動的に変更しようとすると、タイトルバーの console.log に _title が変更されたと表示されますが、タイトルバーのテキストとボタンの「非表示」プロパティは変更されません。

ボタンを押してページを切り替えるときに発生するロジックのコードを次に示します。

toPage: function (arg) {
    var t = Ext.getCmp('narwhal');
    var b = Ext.getCmp('backButton');
    console.log(t,b)
    if (arg === PAGES.PATIENT_LIST) {
        t.setTitle('Patient List');
        b.setHidden(true)
    }
    Ext.getCmp('viewPort').setActiveItem(arg);
}

また、Narwhal の上部に ref を含めようとしました: '#narwhal' および var t = this.getNarwhal() を使用しますが、これも機能しません。

問題が ID の保存場所にあるのか、ID の呼び出し方法にあるのか、それともページが適切に更新されていないためなのかはわかりません。どんなアドバイスも役に立ちます!

お時間をいただきありがとうございます:)

4

1 に答える 1

0

私のプロジェクトでも同じ状況がありました。

タイトル バーへの参照を所有するコントローラーを用意し、tabPanel で activeItemChange をリッスンすることで、すべてを希望どおりに機能させることができました。

于 2013-07-10T16:39:31.487 に答える