0

グリッド用に 1 つと、グリッドで新規追加がクリックされたときに開かれるフォーム用に 2 つのクラスを定義しました。

グリッドビュー クラス

Ext.define('CustomerApp.view.CustomerGridView',
 {
     extend: 'Ext.container.Viewport',
     renderTo: Ext.getBody(),
     itemId: 'gridView'});

フォームクラス

  Ext.define('CustomerApp.view.FormWindow',

     {
     extend : 'Ext.window.Window',
     closable:true,
     itemId: 'addCustomerWindow'})

グリッドで追加ボタンを押すと、ウィンドウが開いてフォームが表示されます。

フォームを表示するコード

     AddCustomer: function()
                        {
                        var win = Ext.create('CustomerApp.view.FormWindow');
                        Ext.ComponentQuery.query('#gridView')[0].add(win);
                        win.show();

                        }

フォームで送信をクリックした後、顧客を追加してフォームを閉じる必要があります。Ext.getCmp を使用すると閉じますが、コンポーネント クエリを使用すると閉じません。

フォームを閉じるコード:

    var gridView = Ext.getCmp('gridView');
    //var gridView= Ext.getComponentQuery.query('#gridView')[0];

    var formWindow = Ext.getCmp('addCustomerWindow');
    //var formWindow=Ext.getComponentQuery.query('#addCustomerWindow')[0];

    gridView.remove(formWindow);

コンソールで確認しましたが、どちらも同じオブジェクトを返していますが、Ext.getCmp() を使用するとフォームは閉じられますが、Ext.ComponentQuery.query() は閉じられません。

4

0 に答える 0