1

我尝试在 Ext XTemplate 中进行计算。根据我读到的文档,可以使用简单的 {x + y} 标记,但这不适用于 2 个变量,因此我尝试使用 {[x + y]} 进行此操作,但之后模板渲染停止.

var tpl = new Ext.XTemplate('{x} + {y} = {[x + y]} thats it.');
console.log( tpl.apply({x: 1.5, y: 2}) );​

结果是。

1.5 + 2 = 

我已经按照我的尝试制作了 jsFiddle http://jsfiddle.net/VnFR3/1/ 。

任何人都可以对此有所了解吗?

4

1 回答 1

3

试试这个:

var tpl = new Ext.XTemplate('{x} + {y} = {[values.x+values.y]} thats it');
console.log( tpl.apply({x: 1.5, y: 2}) );

替代功能:

var tpl = new Ext.XTemplate('{x} + {y} = {[values.x+values.y]}  or ',
                            '{[this.add( values.x,values.y )]}',{
    add:function(x,y){
        return x+y;
    }
});
console.log( tpl.apply({x: 1.5, y: 2}) );

与您的代码的重要区别是在 [] 代码执行模板中使用values对象。文档没有说得足够清楚。

于 2012-12-19T23:59:26.243 回答