剑道模板中的函数:Angular JS1.6



我有一个货币列,如下所示:

{
field: 'INVOICE_AMOUNT_ORIGINAL',
title: $translate.instant('invoiceAmount'),
format: '{0:n}',
template: '#= currency(dataItem.INVOICE_AMOUNT_ORIGINAL)#',
headerTemplate: '{{ 'invAmount' | translate }}',
attributes: {
style: 'text-align: right;'
},
width: 115
}

我有一个功能

function currency(currencyValue) {
kendo.culture('de-DE'); 
kendo.toString(currencyValue, 'c2'); 
}

但即使在模板中应用了正确的语法,函数也不会被调用。

我试图通过函数在模板中传递诸如de-de或en-US之类的值,以便任何用户设置其偏好时,它都会在剑道网格、中动态变化

我做错了什么?

尝试将函数货币放入$scope中。我不知道你的模板是如何工作的,但我认为问题是你的模板字段看不到函数。

$scope.currency = function(currencyValue) {
kendo.culture('de-DE'); 
kendo.toString(currencyValue, 'c2');
};

另一种选择是像在headerTemplate中那样在字段中使用表达式。

template: '#= {{currency(dataItem.INVOICE_AMOUNT_ORIGINAL)}}#'

最新更新