ExtJS 3.3 Gridpanel Wiederherstellung nicht Spalteneinstellungen mit dem Buffering Http Provider mehr

StackOverflow https://stackoverflow.com/questions/4148173

Frage

I Ext aktualisiert 3.3 und meine plötzlich Gridpanel der Spalte „ Breite “ und „ versteckt “ Einstellungen werden nicht mehr wiederhergestellt, bleiben sie auf ihren Standardeinstellungen. Ich verwende die neueste Version der Buffering Http Provider . Ich weiß nicht wirklich den Grund des Fehlers, wenn es wegen dieses Staates Provider Implementierung ist oder der underyling Zustand Mechanismus der Ext.

„Speichern“ scheint die Einstellungen korrekt funktioniert, wird der Handler aufgerufen werden, und die Einstellungen werden korrekt in der Datenbank gespeichert werden. Die Einstellungen werden auch wieder korrekt aus der Datenbank gelesen werden, und meine Ausgabe an den Client enthält die richtigen Einstellungen.

My (teilweise vom Server generierte Code) hat in letzter Zeit nicht geändert, und es sieht so etwas wie folgt aus:

var someState = [{"name":"someGridPanel","value":"o%3Acolumns%3Da%253Ao%25253Aid%25253Ds%2525253ADate%25255Ewidth%25253Dn%2525253A80%255Eo%25253Aid%25253Ds%2525253AMailSender%25255Ewidth%25253Dn%2525253A100%25255Ehidden%25253Db%2525253A1%255Eo%25253Aid%25253Ds%2525253ASubject%25255Ewidth%25253Dn%2525253A286%255Eo%25253Aid%25253Ds%2525253A ... "} ...];

Ext.state.Manager.setProvider(new Ext.ux.state.HttpProvider({saveUrl: 'someHandler.ashx'}));
Ext.state.Manager.getProvider().initState(someState);

// later...

var someGridPanel = new Ext.grid.GridPanel({"id":"someGridPanel","colModel":someColumnModel, ... });

Hat alles wichtige Änderung in den staatlichen Mechanismen, die ich verpasst? Die Dokumentation sagt, dass ich nicht ein StateID , wenn ich gesetzt ein id für eine Komponente angeben muß. Aber ich sehe, dass es jetzt eine Spalte Objekt in der Ext-Dokumentation, die vorher nicht da war. Vielleicht diese Notwendigkeit ein id jetzt?

Für Hinweise und Hilfe wäre sehr geschätzt.

War es hilfreich?

Lösung

Got die Antwort in einem Forumsbeitrag , ist das Thema in ExtJS 3.3 selbst. Diese Zwangssteuerung funktioniert für mich:

Ext.override(Ext.grid.ColumnModel, {
    setState: function (col, state) {
        Ext.apply(this.lookup[col], state);
    }
});

Update:. Es ist nun behoben in 3.3.1

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top