剑道模板中的功能:Angular JS1.6

Posted

技术标签:

【中文标题】剑道模板中的功能:Angular JS1.6【英文标题】:Function in Kendo template: Angular JS1.6 【发布时间】:2019-05-13 04:40:19 【问题描述】:

我有一个这样的货币列:


  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 等值,以便任何用户在任何时候对其设置偏好时,它都会在剑道网格中动态变化,

我做错了什么?

【问题讨论】:

【参考方案1】:

尝试将功能货币放入$scope。我不知道您的模板是如何工作的,但我认为问题在于您的模板字段没有看到该功能。

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

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

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

【讨论】:

以上是关于剑道模板中的功能:Angular JS1.6的主要内容,如果未能解决你的问题,请参考以下文章

Angular 6 中的剑道网格:isEditing:如何?

Kendo-Angular:禁用剑道上传中的选择文件按钮

从Angular 2+中的剑道网格中获取选定行的列表

选择后如何重置剑道自动完成中的文本

ng-template 错误:模板上下文未定义名为 ...(剑道网格)的成员

剑道网格列模板中的条件