Polymer 聚合物1.x:如何预处理列表或中继器中的项目?

Polymer 聚合物1.x:如何预处理列表或中继器中的项目?,polymer,polymer-1.0,plunker,iron-data-table,polymer-1.x,Polymer,Polymer 1.0,Plunker,Iron Data Table,Polymer 1.x,有人能给我指出一种模式,例如格式化(或预处理)进入中继器的数据项(如铁列表或铁数据表) 换句话说。假设我想给每个用户添加一个字段,并在列表中显示它;我们称之为namelength,其中: item.user.namelength = item.user.name.first.length + item.user.name.last.length 如何(在HTML或JS中的什么位置,使用什么模式)最好地完成这个预处理任务 content-el.html <base href="https:

有人能给我指出一种模式,例如格式化(或预处理)进入中继器的数据项(如
铁列表
铁数据表

换句话说。假设我想给每个用户添加一个字段,并在列表中显示它;我们称之为
namelength
,其中:

item.user.namelength = item.user.name.first.length + item.user.name.last.length
如何(在HTML或JS中的什么位置,使用什么模式)最好地完成这个预处理任务

content-el.html
<base href="https://polygit.org/polymer+:master/iron-data-table+Saulis+:master/components/">
<link rel="import" href="polymer/polymer.html">
<script src="webcomponentsjs/webcomponents-lite.min.js"></script>

<link rel="import" href="iron-ajax/iron-ajax.html">
<link rel="import" href="paper-button/paper-button.html">

<link rel="import" href="iron-data-table/iron-data-table.html">

<dom-module id="content-el">
    <template>
        <style></style>

    <iron-ajax
      auto
      url="https://saulis.github.io/iron-data-table/demo/users.json" 
      last-response="{{users}}">
    </iron-ajax>
    <iron-data-table items="[[users.results]]">
      <data-table-column name="Picture" width="50px" flex="0">
        <template>
          <img src="[[item.user.picture.thumbnail]]">
        </template>
      </data-table-column>
      <data-table-column name="First Name">
        <template>[[item.user.name.first]]</template>
      </data-table-column>
      <data-table-column name="Last Name">
        <template>[[item.user.name.last]]</template>
      </data-table-column>
      <data-table-column name="Email">
        <template>[[item.user.email]]</template>
      </data-table-column>
    </iron-data-table>

    </template>

  <script>
    (function() {
      'use strict';
      Polymer({
        is: 'content-el',
            });
        })();
  </script>
</dom-module>

[[item.user.name.first]]
[[item.user.name.last]]
[[item.user.email]]
(功能(){
"严格使用",;
聚合物({
是‘内容el’,
});
})();
例如

<data-table-column name="Name Length">
    <template>{{_len(item.user.name.first, item.user.name.last)}}</template>
</data-table-column>
例如

通过添加您描述的
namelength
字段,您可以使用预处理
user.results

// template
<iron-data-table items="[[_getUserData(users.results)]]">
  ...
  <data-table-column name="Name Length">
    <template>[[item.user.namelength]]</template>
  </data-table-column>
</iron-data-table>

// script
Polymer({
  is: 'content-el',
  _getUserData: function(items) {
    items.forEach(function(item) {
      var user = item.user;
      user.namelength = user.name.first.length + user.name.last.length;
    });
    return items;
  }
});
//模板
...
[[item.user.namelength]]
//剧本
聚合物({
是‘内容el’,
_getUserData:函数(项){
items.forEach(功能(项目){
var user=item.user;
user.namelength=user.name.first.length+user.name.last.length;
});
退货项目;
}
});

您可以通过添加您描述的
namelength
字段,使用预处理
user.results

// template
<iron-data-table items="[[_getUserData(users.results)]]">
  ...
  <data-table-column name="Name Length">
    <template>[[item.user.namelength]]</template>
  </data-table-column>
</iron-data-table>

// script
Polymer({
  is: 'content-el',
  _getUserData: function(items) {
    items.forEach(function(item) {
      var user = item.user;
      user.namelength = user.name.first.length + user.name.last.length;
    });
    return items;
  }
});
//模板
...
[[item.user.namelength]]
//剧本
聚合物({
是‘内容el’,
_getUserData:函数(项){
items.forEach(功能(项目){
var user=item.user;
user.namelength=user.name.first.length+user.name.last.length;
});
退货项目;
}
});