2017-03-06 7 views
0

私は2つの要素を持っています。子ルート(ポリマー)のプロパティとして配列を使用

renderers: { 
    type: Array, 
    reflectToAttribute: true 
    } 
}, 

attached: function() { 
    this.$.datatable.renderDatatable(); 
    this.renderers = [ 
{ 
    "render": function(data, type, row) { 
    return data +' ('+ row[3]+')'; 
    }, 
    "targets": 0 
} 
] 
} 
:最初の(ホスト)

<my-datatable id="datatable" datas="https://myawesomeurl.com/datasource.php" target-table="manualTable" renderers={{renderers}}> 

とJSに(バインディングポリマーデータを使用して)、その子要素にHTMLプロパティとして使用され、変数(と呼ばれるレンダラ)の配列を含みます子要素で

、このプロパティは

Polymer({ 
    is: 'my-datatable', 
    properties: { 
    datas: { 
     type: String 
    }, 
    targetTable: { 
     type: String 
    }, 
    renderers: { 
     type: Array, 
     value: [] 
    } 
    }, 
renderDatatable: function() { 
    console.log(this.targetTable); 
    console.log("render ", this.renderers); 
    var table = jQuery(Polymer.dom(this).getOwnerRoot().host.$[this.targetTable]).DataTable({ 
    "colReorder": true, 
    "paging": false, 
    "info": false, 
    "processing": true, 
    "serverSide": true, 
    "ajax": this.datas, 
    "columnDefs": this.renderers, 
    dom: 'Blfrtip', 
    buttons: [ 
    'copy', 'csv', 'excel', 'pdf', 'print' 
    ] 
}); 

宣言されている。しかしthis.renderersのコンソールログに、それは常に空です。理解できません。どんな手掛かり? (そして、あなたが思っている場合には、私が入力として列のレンダラーを取るjqueryのデータテーブル要素を作成しようとしている)

答えて

0

あなたがこの試すことができます:属性値をバインドする場合

<my-datatable id="datatable" datas="https://myawesomeurl.com/datasource.php" target-table="manualTable" renderers$="{{renderers}}">

$記号が必要です。

Polymer Data Binding

関連する問題