我正在使用<core-list-dart>
我的 Polymer Dart 应用程序中的元素:
<core-list-dart data="{{data}}">
<template>
<span>{{name}}</span>
</template>
</core-list-dart>
Data 是 Foo 的数组,其中 Foo 是:
class Foo {
String name;
...
}
是否可以在模板中引用 Foo 实例而不是他的字段?
类似于:
<core-list-dart data="{{data}}">
<template>
<foo-element foo="{{ITEM}}"></foo-element>
</template>
</core-list-dart>
最佳答案
从 core_elements 版本 0.4.0 开始,模型在模板中作为 model
变量公开。
旧回复:
要绑定(bind)项目,您可以使用 {{}}
注释,如 @Günter Zöchbauer 答案中所述:
<foo-element foo="{{}}"></foo-element>
问题在于数组中的元素被 ListModel 类包装。 “真实”元素不可访问(也许可以修改库以实现这种可能性)。
解决方法是向模型对象 (Foo) 添加 getter,如下所示:
class Foo {
String name;
Foo get self => this;
...
}
所以在模板中你可以这样做:
<foo-element foo="{{self}}"></foo-element>
关于data-binding - core-list-dart 模板如何绑定(bind)到模型本身,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25930606/