我正在使用vaadin-grid动态创建一个表(包括列数!),就像这样
<vaadin-grid id="grid" style="flex:1" items="[[tableData]]">
<template is="dom-repeat" items="[[tableColumns]]" as="column">
<vaadin-grid-column>
<template class="header">
[[column.header]]
</template>
<template>
<!--[[formatNumberForTable(get(column.value, item))]]--> ***
[[get(column.value, item)]]
</template>
</vaadin-grid-column>
</template>
</vaadin-grid>
tableColumns
在运行时填充并确定列数及其标题。要动态确定要在各列中显示item
的哪个属性,我建议使用get(column.value, item)
,其中column.value
动态填充相应属性的名称。这很好用。
问题是我也想格式化值。但是像***标记的行代码不起作用,它打印出源代码而不是值。
如何格式化我的值?
答案 0 :(得分:2)
您的HTML代码中无法使用回调函数。
<!--[[formatNumberForTable(get(column.value, item))]]--> ***
让formatNumberForTable
代替自己调用get
方法。
[[formatNumberForTable(column.value, item)]]
formatNumberForTable: function(column.value, item) {
var variable = this.get(column.value, item);
// do something more with 'variable'
return variable;
}