Mit Hilfe von benutzerdefinierten Attributen in ExtJS-Komponente

Mein Antrag wurde immer mehr für das Letzte Jahr oder so und ich habe endlich angefangen zu splitten, in der die gemeinsamen Komponenten, die durch die Ausweitung der bestehenden. Ich habe festgestellt, dass dies wirklich hilfreich ist - die zunehmende Geschwindigkeit der Entwicklung und Wartung. Mein problem ist, dass ich noch nicht Begriffen, das Konzept der Verwendung von benutzerdefinierten Parametern, die auf meine Komponenten und war in der Hoffnung, es könnte jemand bieten einige Hilfe in dem folgenden Beispiel. Speziell ich bin anscheinend nicht in der Lage sein, um Zugriff auf die benutzerdefinierten parameter (myCustomParam) in die proxy-erklärt in der initComponent Funktion:

MyEmployeeGrid = Ext.extend(Ext.grid.GridPanel, {
 myCustomParam: "CompanyX",
 initComponent:function() {
    //Store Reader
    var myReader = new Ext.data.JsonReader({
        root : 'objectsToConvertToRecords',
        idProperty: 'id',
        fields : [
            {name: 'id'},
            {name: 'employee', allowBlank:false},
            {name: 'department', allowBlank:false}
        ]
    });

    //Store Proxy
    var dwrProxy = new Ext.ux.data.DwrProxy({
            apiActionToHandlerMap : {
            read : {
                dwrFunction : EmployeeService.readCompanyEmployees,
                getDwrArgsFunction: function(request, recordDataArray, oldRecordDataArray) {
                    return [myCustomParam];
                }
            }
        }
    });

    //Setup Params for the grid
    Ext.apply(this, {
        store: new Ext.data.Store({
             proxy: dwrProxy,
            reader: myReader,
            autoLoad : true,
            autoSave: true
        }),
        columns: [{header: "Employee", dataIndex: 'employee'},
                    {header: "Department", dataIndex: 'department'}]
    });

    MyEmployeeGrid.superclass.initComponent.apply(this, arguments);
} //eo function initComponent

,onRender:function() {
    MyEmployeeGrid.superclass.onRender.apply(this, arguments);
} //eo function onRender

});

Ext.reg('myemployeegrid', MyEmployeeGrid);
InformationsquelleAutor James | 2011-01-14
Schreibe einen Kommentar