元素属性更改后,铁列表不会更新

时间:2017-03-02 13:29:36

标签: polymer-1.0

我在更改项目属性后重新渲染铁列表时遇到问题。

我需要使用铁列表来重新渲染以应用新类,就像我推动或拼接项目时一样。

已经尝试了几乎所有的东西(notifyPath,resize,_update,...),但仍然无法正常工作。

请帮助:)

下面你可以找到一个jsfiddle to ilustrate:

工作正常:

this.set('words.'+i+'.checked', true); 

不工作:

this.notifyPath('words.'+i+'.checked');

http://jsfiddle.net/s6f029j3/23/

1 个答案:

答案 0 :(得分:0)

我看着你的jsfiddle并做了一些改变。立即尝试,看看这是否是你想要做的。

jsfiddle

我对纸质清单上的功能进行了更改,让它看看是否已在那里检查过,而不是在实际功能中。

<iron-list id="list" items="{{words}}">
        <template>
            <paper-item class$='[[_computedClass(item.checked)]]'>
              <div>Item: [[item.name]] checked: [[item.checked]]</div>
            </paper-item>
        </template>
    </iron-list>

在函数中,这就是我所做的:

_computedClass: function(e) {
            //WHY IT DOES NOT RE-RENDER AFTER CLICK????
        return (e) ? 'stuff_checked' : 'stuff_notchecked';
    },

只需删除.checked,它就可以正常运行了。