应该在模板内创建绑定(bind)repeat
需要 polymer 元素上的关联属性,我认为它们绑定(bind)到 ObservableList
的数组项?
在我的模板中是以下代码:
<polymer-element name="event-details">
<template>
<!-- etc -->
<template repeat="{{artist in event.artist}}">
<artist-card artist="{{artist}}">
</template>
<!-- etc -->
</template>
<!-- etc -->
</polymer-element>
我的元素定义看起来像
@CustomTag('event-details')
class EventDetails {
/* etc */
@published
api.Event get event => readValue(#event);
set event(api.Event event) => writeValue(#event, value);
/* etc */
}
当我创建元素时,我得到了错误
"EventDetails has no attribute `artist`"
但我假设
artist
在 <template repeat>
应该只存在于该模板的范围内。拥有 {{artist}}
没有任何值(value)。在元素的定义上,因为它只会指向模板子元素中的最后一个元素。artists
是 ObservableList
在 api.Event
对象,尽管它是在没有使用 polymer 的情况下定义的。
最佳答案
使用简单的属性(field/getter/setter)而不是 readValue/writeValue。
关于dart - `<template repeat>` 的作用域规则是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29657175/