0

たまに(通常は3ページに1回の読み込み)次のエラーメッセージが表示されます

ビューは未定義ですview.onItemSelect(record);

私からしてみれば

            {
                xtype:'combobox',
                name:'PurchaseOrderStatusId',
                id:'PurchaseOrderStatusCombo',
                displayField:'Name',
                store:'PurchaseOrderStatuses',
                mode:'local',
                valueField:'Id',
                fieldLabel:'Status',
                width: 350
            },
            {
                xtype:'combobox',
               name:'SupplierId',
               id:'SupplierCombo',
                displayField:'Name',
                store:'Suppliers',
                mode:'local',
                valueField:'Id',
                fieldLabel:'Suppliers',
                width: 350
            },

//コントローラーでonLaunch:function(){

        var suppliers = this.getSuppliersStore();
        suppliers.load();

        var purchaseOrderStatuses = this.getPurchaseOrderStatusesStore();
        purchaseOrderStatuses.load();

        var purchaseOrdersStore = this.getPurchaseOrdersStore();
        purchaseOrdersStore.load({
            callback: this.onPurchaseOrderLoad,
            scope: this
        });
    },
    onPurchaseOrderLoad: function (selection) {
        var form = Ext.getCmp('purchaseOrderForm');
        form.loadRecord(selection[0]);
    },

私のモデルでは

    {
        mapping:'PurchaseOrderStatusId',
        name:'PurchaseOrderStatusId'
    },       
    {
        mapping:'SupplierId',
        name:'SupplierId'
    }
4

1 に答える 1

0

あなたが報告しているエラー メッセージが、これまでに明らかにしたコードとどのように関連しているかは明らかではありません。したがって、ここで点をつなぐのは難しいです。

ただし、いくつかの観察事項があります。 1. アプリの起動時にストアを常にできるだけ早くロードする必要がある場合は、autoLoad:trueそれらのストアに構成を設定します。この方法では、それらを明示的にロードする必要がなく、ビューの準備が整う前にロードを完了する時間が長くなります。2. モデルのインスタンスをフォームにロードする必要がある場合は、ストアにロードさせる代わりに Model.load メソッドを使用できます。サーバーからレコードを読み取る方法について、モデルに API を提供する必要があります。3. モデル フィールドがサーバーが返すものと一致する場合、モデル マッピングは必要ありません。

さらにサポートが必要な場合は、質問を更新してデバッグ情報を追加してください。

于 2012-03-01T06:42:24.583 に答える