如何访问Extjs6中网格的widget列中的其他记录字段?

时间:2016-03-18 22:13:57

标签: extjs extjs6

我有一个带有进度条小部件列的网格:

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

如何将textTpl更改为{record.data.field1} out of {record.data.field2},似乎只能访问当前列值。

请参阅http://examples.sencha.com/extjs/6.0.1/examples/kitchensink/#widget-grid

1 个答案:

答案 0 :(得分:1)

如果您查看progressbarwidget代码,您的恐惧是有根据的。

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

您必须扩展该类,覆盖updateValue函数,并使用以下内容:

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

然后你去。