我有这个自动绑定模板:
<template is="dom-repeat" items="[[row]]" as="item">
<td violated=[[item.violated]] class="result-tb-data">[[item.value]]</td>
</template>
我不知道为什么item.value
被正确绑定但[[item.violated]]
没有绑定。该值存在,因为我尝试了反向绑定:
<td violated=[[item.value]] class="result-tb-data">[[item.violated]]</td>
我知道它没有绑定,因为我有这种风格:
.result-tb-data[violated=true] {
font-style: italic;
}
和item.violated
是一个布尔字段。
以下是一个完整的例子:
<dom-module id="my-element">
<style>
span[violated="true"] {
font-style: italic;
}
</style>
<template>
<span violated="{{violated}}">Text</span>
</template>
</dom-module>
<script>
Polymer({
is: 'my-element',
properties: {
violated: {
type: Boolean,
value: true
}
}
});
</script>
答案 0 :(得分:2)
绑定到属性的正确语法包含$
(docs)。所以在你的情况下它应该是:
violated$=[[item.violated]]
答案 1 :(得分:1)
Maria是正确的,但是当我尝试你的例子时,我遇到了另一个问题。
这是你为属性而不是字符串设置布尔值。这有效:
<dom-module id="my-element">
<style>
span[violated="true"] {
font-style: italic;
}
</style>
<template>
<span violated$="{{violated}}">Text</span>
</template>
</dom-module>
<script>
Polymer({
is: 'my-element',
properties: {
violated: {
type: String,
value: "true"
}
}
});
</script>