聚合物2在dom-repeat

时间:2018-05-30 09:04:29

标签: polymer polymer-2.x vaadin-grid

我正在使用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动态填充相应属性的名称。这很好用。

问题是我也想格式化值。但是像***标记的行代码不起作用,它打印出源代码而不是值。

如何格式化我的值?

1 个答案:

答案 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;
}