0

以下の構成は4.07で機能しますが、4.1では機能しません。

4.1では、コンボに3つのアイテムがあることがわかります。displayFieldとvalueFieldを読み取らないだけです。

私はMVCアーキテクチャを使用しています。

私からしてみれば

{
xtype: 'combobox',
id: 'ProofRequired',
name: 'ProofRequired',
fieldLabel: 'Proof Required',
displayField: 'Name',
store: 'ProofRequired',
triggerAction: 'all',
queryMode: 'local',
valueField: 'Id'
},

私のapp.jsで

stores: [ 'VarnishType'],

と私の店

Ext.define('Mis.store.ProofRequired', {    extend: 'Ext.data.Store',


    constructor: function(cfg) {
        var me = this;
        cfg = cfg || {};
        me.callParent([Ext.apply({
            autoLoad: true,
            storeId: 'ProofRequired',
            clearOnPageLoad: false,
            data: [
                {
                    Id: '1',
                    Name: 'Digital'
                },
                {
                    Id : '2',
                    Name : 'PDF'
                },
                {
                    Id : '3',
                    Name : 'Other'
                }
            ],
            proxy: {
                type: 'ajax',
                reader: {
                    type: 'array'
                }
            },
            fields: [
                {
                    Id: 'Id',
                    Name: 'Name'
                }
            ]
        }, cfg)]);
    }
});
4

1 に答える 1

0

以下は私のために働いた。その理由は 100% わかります。フィールド名を引用符で囲む必要があると思います。

Ext.define('Mis.store.ProofRequired', {
extend: 'Ext.data.Store',

constructor: function(cfg) {
    var me = this;
    cfg = cfg || {};
    me.callParent([Ext.apply({
        autoLoad: true,
        storeId: 'ProofRequired',
        clearOnPageLoad: false,
        fields: ['Id', 'Name'],
        data : [
            {"Id":"1", "Name":"Digital"},
            {"Id":"2", "Name":"PDF"},
            {"Id":"3", "Name":"Other"}
        ],
        proxy: {
            type: 'ajax',
            reader: {
                type: 'array'
            }
        }
    }, cfg)]);
}

});

于 2012-05-15T12:22:51.107 に答える