2016-03-18 3 views
0

ich ein Raster mit einer progressbar Widget Spalte:Wie kann man auf andere Datensatzfelder innerhalb der Widgetspalte des Gitters in Extjs6 zugreifen?

{ 
    xtype : 'widgetcolumn', 
    dataIndex: 'progress', 
    widget: { 
     xtype: 'progressbarwidget', 
     textTpl: [ 
      '{percent:number("0")}% done' 
     ] 
    } 
} 

Wie kann ich textTpl ändern etwas wie {record.data.field1} out of {record.data.field2} zu sein, scheint es, dass nur aktuelle Spaltenwert zugänglich wird.

Siehe http://examples.sencha.com/extjs/6.0.1/examples/kitchensink/#widget-grid

Antwort

1

Wenn Sie einen Blick in die progressbarwidget-Code haben, wird Ihre Angst begründet.

updateValue: function(value, oldValue) { 
    ... 
    if (textTpl) { 
     me.setText(textTpl.apply({ 
      value: value, 
      percent: Math.round(value * 100) 
     })); 
    } 

Sie müssten diese Klasse erweitern, überschreiben die updateValue Funktion, und so etwas wie folgt verwenden:

me.setText(textTpl.apply({ 
    value: value, 
    percent: Math.round(value * 100), 
    record: me.$widgetRecord 
})); 

und los geht.

Verwandte Themen