我的 iron-list
中绑定(bind)了一个项目,当我更改对象上的绑定(bind)属性时,我希望看到屏幕上反射(reflect)的更改,但我没有。做错了什么?
https://jsfiddle.net/ckqL3a3o/3/
<link rel="import" href="https://cdn.rawgit.com/Download/polymer-cdn/1.2.3.2/lib/polymer/polymer.html">
<link rel="import" href="https://cdn.rawgit.com/Download/polymer-cdn/1.2.3.2/lib/iron-list/iron-list.html">
<script src="https://google.github.io/traceur-compiler/bin/traceur.js"></script>
<script src="https://google.github.io/traceur-compiler/bin/BrowserSystem.js"></script>
<script src="https://google.github.io/traceur-compiler/src/bootstrap.js"></script>
<template is="dom-bind" id="app">
<div style="width: 500px; height: 300px; background: #eee; overflow: auto; float:left">
<iron-list items="{{data}}" as="item" style="width: 500px; height: 300px;">
<template>
<p><span>{{item.name}}</span> <span>{{item.value}}</span></p>
</template>
</iron-list>
</div>
</template>
<script type="module">
'use strict';
var app = document.querySelector('#app');
app.data = [{ name: 'item', value: 3 }];
setTimeout(() => app.data[0].value = 4, 2000);
</script>
最佳答案
您需要使用 Polymers API 修改模型数据,Polymer 才能收到通知
setTimeout(() => this.set('app.data.0.value', 4), 2000);
另请参阅
-https://www.polymer-project.org/1.0/docs/devguide/data-binding.html#set-path
-https://www.polymer-project.org/1.0/docs/devguide/data-binding.html#array-binding
-https://www.polymer-project.org/1.0/docs/devguide/properties.html#notifysplices
关于javascript - 更改 Iron-List 中现有项目的绑定(bind)属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36082278/