<template id="repeat" is="dom-repeat" items="[[model]]" as="day">
<component model="[[day]]"></component>
</template>
我正在使用铁本地存储来加载数据[[model]]。 使用localStorage.setItem(...)更新数据时,如何让模板更新并显示新添加的对象?
现在,新对象仅在页面刷新后显示,因为它将重新加载本地存储。
我尝试使用另一个stackoverflow帖子所说的this.$.repeat.render()
,但没有做任何事情。
答案 0 :(得分:0)
我会使用的模式是:
<template>
<iron-localstorage name="my-app-storage" value="{{model}}" on-iron-localstorage-load-empty="initializeDefaultValue"></iron-localstorage>
<template id="repeat" is="dom-repeat" items="[[model]]" as="day">
<component model="[[day]]"></component>
</template>
</template>
然后,当您想要更新localstorage时,只需更新对象because:
iron-localstorage会在更改值时自动将值保存到localStorage。请注意,如果value是对象,则仅当value是不同的实例时才会触发自动保存。
this.set('model', model);