聚合物核心选择器不刷新

时间:2014-09-24 12:51:19

标签: dart dart-polymer

我的Polymer元素的Dart代码如下所示:

@CustomTag('my-element')
class MyElement extends PolymerElement {
  final List<String> colors = toObservable(['red', 'green', 'blue']);
  MyElement.created() : super.created();
}

HTML看起来像这样:

<polymer-element name="my-element">
  <template>
    <style>
      .core-selected {
        font-weight: bold;
      }
    </style>
    <core-selector id="selector" selected="1">
      <template repeat="{{color in colors}}">
        <div value="{{color}}">{{color}}</div>
      </template>
    </core-selector>
    <hr>
    <!-- Prints the selected index, but does not update -->
    <div>{{$['selector'].selected]}}</div> 
  </template>
  <script type="application/dart" src="my_element.dart"></script>
</polymer-element>

使用<div>{{$['selector'].selected]}}</div>正确显示所选color的索引,但选择其他颜色不会刷新selected的值。我正确使用这个吗?或者这是一个错误吗?

1 个答案:

答案 0 :(得分:1)

我同意这是一个错误,但在此期间你可以像这样解决它

<core-selector id="selector" selected="{{selected}}">
...
<div>{{selected}}</div>

支持代码包含明显的

@observable int selected = 1;

我确实想知道你的版本在纯JS环境中使用时是否有效?但这是另一个问题。