Polymer 动态生成绑定变量名

Polymer 动态生成绑定变量名,polymer,Polymer,我有一个数据网格,在其中我使用dom repeat生成列 <vaadin-grid-filter value=[[filterInput]] /> <input value={{filterInput::input}} /> </vaadin-grid-filter> 我将用于过滤列的值与输入到输入元素中的值绑定在一起 我的问题是每一列都绑定到相同的filterInput变量 是否有任何方法可以为每个特定列使用变量进行绑定 我是否可以为每个列生成绑定变

我有一个数据网格,在其中我使用
dom repeat
生成列

<vaadin-grid-filter value=[[filterInput]] />
 <input value={{filterInput::input}} />
</vaadin-grid-filter>

我将用于过滤列的值与输入到输入元素中的值绑定在一起

我的问题是每一列都绑定到相同的
filterInput
变量

是否有任何方法可以为每个特定列使用变量进行绑定


我是否可以为每个列生成绑定变量,例如,
filterInput[0]
filterInput[1]
等。通过使用
dom repeat
附带的
索引
变量,我可以使它与元素一起工作

HTML模板

全聚合物元件


输入阵列
[[item.label]]

类InputArrayElement扩展了Polymer.Element{ 静态get是(){return'输入数组元素';} 静态获取属性(){ 返回{ 技术:{ 类型:数组, 价值:[ {id:“php”,标签:“php”,选中:false}, {id:“js”,标签:“Javascript”,选中:false}, {id:“html”,标签:“html”,选中:false}, {id:“css”,标签:“css”,选中:false}, ], 通知:正确 } } } 就绪(){ super.ready(); 本附录增加了列表器(“技术变更”,功能(e){ 控制台日志(e); }); } } define(InputArrayElement.is,InputArrayElement);
Wow!完美而简单。谢谢:)很乐意帮忙:-)
<template is="dom-repeat" items="{{technology}}">
    <input type="text" value="{{item.label::input}}">[[item.label]]<br/>
</template>
technology : {
    type: Array,
    value: [
        {id:"php", label:"PHP", selected:false},
        {id:"js", label:"Javascript", selected:false},
        {id:"html", label:"HTML", selected:false},
        {id:"css", label:"CSS", selected:false},
    ]
}
<dom-module id="input-array-element">
    <template>
        <h3>Inputs Array</h3>
        <template is="dom-repeat" items="{{technology}}">
            <input type="text" value="{{item.label::input}}">[[item.label]]<br/>
        </template><br>
    </template>
    <script>
    class InputArrayElement extends Polymer.Element {
        static get is() { return 'input-array-element'; }

        static get properties() {
            return {
                technology : {
                    type: Array,
                    value: [
                        {id:"php", label:"PHP", selected:false},
                        {id:"js", label:"Javascript", selected:false},
                        {id:"html", label:"HTML", selected:false},
                        {id:"css", label:"CSS", selected:false},
                    ],
                    notify: true
                }
            }
        }

        ready() {
            super.ready();
            this.addEventListener("technology-changed", function(e){
               console.log(e); 
            });
        }

    }

    window.customElements.define(InputArrayElement.is, InputArrayElement);        
    </script>
</dom-module>