2016-04-16 23 views
0

Ich habe ein Raster, dass wenn ich die Seite manchmal nicht korrekt rendern. Es ist nervig und ich versuche eine Lösung, um es richtig zu rendern.
Alles ist gut mit den Daten darauf, aber manchmal wird es nicht richtig dargestellt.
Dies ist nur wenn ich das Raster zum ersten Mal lade, denn danach rendert es richtig. Hier ist das Raster mit dem Render korrekt: Grid Render OK und hier ist der Renderfehler, dass es mir manchmal beim ersten Laden des Rasters gibt. Grid Render Error Ich habe all diese Korrekturen versucht, aber keine Arbeit:ExtJS Grid nicht richtig rendern

grid.getView().refresh(); 
--- 
grid.columns[2].setVisible(false); 
grid.columns[2].setVisible(true); 
--- 
grid.getStore().filterBy(function() { return true; }); 

Nachdem ich auf der linken Raster, gilt es einen Filter auf dem rechten Gitter und wenn das Rendern war nicht in Ordnung, wird es richtig. Also ich glaube, es ist ein Render-Problem. Ich stelle diese Frage als letzten Ausweg. Hat jemand irgendwelche Vorschläge?
Ich verwende ExtJS 4.

+0

keine Fehler in der Konsole? – serg

+0

können Sie es mit einer [Geige] (http://fiddle.sencha.com) reproduzieren? – aviram83

+0

@serg Ich habe noch nie einen Konsolenfehler gemacht. Es ist schwierig, weil der Fehler nur ein paar Mal bei der ersten Ladung auftritt und ich habe normalerweise den Firebug zu dieser Zeit nicht geöffnet. Wenn ich sicher weiß, werde ich diese Frage beantworten – alexandre1985

Antwort

0

Versuchen Sie, einen Nachläufer auf Ihrer Komponente hinzuzufügen. Dadurch wird das Containerlayout neu berechnet.

So etwas wie

grid.on("afterrender", function() { 
      this.doLayout(); 
}); 

oder mit einem Hörer:

listeners: { 
      afterrender: function(e) { 
       this.doLayout();  
      }