Polymer 属性绑定

Polymer 属性绑定,polymer,Polymer,我有一个自动绑定模板: <template is="dom-repeat" items="[[row]]" as="item"> <td violated=[[item.violated]] class="result-tb-data">[[item.value]]</td> </template> 我知道它没有装订,因为我有这种风格: .result-tb-data[violated=true] { font-style: italic

我有一个自动绑定模板:

<template is="dom-repeat" items="[[row]]" as="item">
  <td violated=[[item.violated]] class="result-tb-data">[[item.value]]</td>
</template>
我知道它没有装订,因为我有这种风格:

.result-tb-data[violated=true] {
  font-style: italic;
}
项。违反的
是一个布尔字段

以下是一个完整的示例:

<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>

span[font=“true”]{
字体:斜体;
}
正文
聚合物({
是‘我的元素’,
特性:{
违反:{
类型:布尔型,
值:true
}
}
});

绑定到属性的正确语法包含一个
$
()。因此,在您的情况下,应该是:

violated$=[[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: String,
        value: "true" 
      }
    }
  });
</script>

span[font=“true”]{
字体:斜体;
}       
正文
聚合物({
是‘我的元素’,
属性:{
违反:{
类型:字符串,
价值:“真实”
}
}
});

您还可以将
作为
布尔值保留,并删除样式中的
=“true”
<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>