1

西(ナビゲーション)と中央領域の境界レイアウトが与えられます。西の地域でトピックAをクリックしたとしましょう。中央の地域を、topic_a.jsという名前の「extjs」プログラムコードに置き換えます(「最後のトピックを削除」のように置き換えます)。

私はこのコードでロードすることに成功しました:

dynamicPanel = new Ext.Component({
    loader: {
        url: '/www/file.htm',
        renderer: 'html',
        autoLoad: true,
        scripts: true
    }
});

var oMainContainer = Ext.getCmp('maincontainer');
oMainContainer.show();
oMainContainer.add(dynamicPanel);

しかし、これを2回目に呼び出すと、中央領域に「追加」され、もちろん「削除」に失敗します。良いアプローチは何でしょうか。

4

1 に答える 1

1

あなたはこのようなことをすることはできません:

var oMainContainer = Ext.getCmp('maincontainer');
oMainContainer.show();
oMainContainer.removeAll();
oMainContainer.add(dynamicPanel);

http://docs.sencha.com/ext-js/4-0/#!/api/Ext.container.Container-method-removeAll

私はあなたの質問を正しく理解することを望みます。これにより、すべての子コンポーネントが削除され、新しいコンポーネントに追加できるようになります。

于 2012-07-07T04:28:42.663 に答える