如何从xTemplate中的函数传递返回值?

时间:2018-06-19 12:14:45

标签: javascript extjs

假设我们有以下数据:

data: [{
    'D': 1
}];

通常,我们可以使用以下代码访问此数据:

var tpl = new Ext.XTemplate(
    '<tpl for=".">',      
        '<p>{D}</p>',  //returns 1
    '</tpl>'
);

但是,如果我将其传递给function,似乎它只是返回一个字符串而不是值'1'。

以下是示例代码:

var tpl = new Ext.XTemplate(
    '<tpl for=".">',
    '<p>{[this.getLetterD()]}</p>', //returns 'D'
    '</tpl>', {
        getLetterD: function () {
            ret = 'D'
            return ret;
        }
    }
);

我正在尝试创建一个function,它将从另一个store获取数据,将其存储到function并呈现function的值。请告知应如何在xTemplate中传递它?

1 个答案:

答案 0 :(得分:0)

您必须像下面这样打电话:-

var tpl = new Ext.XTemplate(
    '<tpl for=".">',
    '<p>{[this.getLetterD(values)]}</p>', //returns 'D'
    '</tpl>', {
        getLetterD: function (vals) {
            var ret = vals.D;
            return ret;
        }
    }
);

Working Example

希望这会帮助/指导您。