【问题标题】:Repeating over a list Polymer broken重复列表聚合物损坏
【发布时间】:2013-09-12 09:21:53
【问题描述】:

更新:前沿编辑器与 pub 上的序列化/聚合物版本不兼容的问题。需要从 SVN 安装版本。

对我来说,重复一个列表似乎已经被破坏了。

https://github.com/sethladd/dart-polymer-dart-examples/blob/master/web/bind_and_repeat_over_list_of_primitives/

这是我能找到的最简单的例子,我得到了同样的错误:

内部错误:“package:serialization/src/serialization_helpers.dart”:错误:第 212 行 pos 7:未解决的对超级构造函数“LinkedHashMap()”的隐式调用 类 IdentityMap 扩展 LinkedHashMap { ^

【问题讨论】:

    标签: dart polymer


    【解决方案1】:

    可能是 #dartlang 2013 年 9 月 10 日的更新:-

    '新的 Dart 版本在编辑器中进行了搜索改进等。

    SDK 更改包括:

    HashMap 和 LinkedHashmap 不能再扩展了......'

    看起来 Polymer 需要为此更新。

    【讨论】:

    • 是的,我想这可能与它有关。我想我应该提交一个错误。
    【解决方案2】:

    您可以稍微修改代码并使其工作。

    index.html 文件更改为如下所示:

    <!DOCTYPE html>
    
    <html>
      <head>
        <title>index</title>
        <script src="packages/polymer/boot.js"></script>
      </head>
      <body>
        <ul>
          <template id="tmpl" bind>
            <template repeat="{{}}">
              <li>{{}}</li>
            </template>
          </template>
        </ul>
        <script type="application/dart" src="index.dart"></script>
      </body>
    </html>
    

    你的index.dart 应该是这样的(它没有改变):

    import 'dart:html';
    
    main() {
      List fruits = ['apples', 'oranges', 'pears'];
      query('#tmpl').model = fruits;
    }
    

    您绑定到包含注册repeat 的模板的模板。 repeat="{{}}"中的{{}}指的是绑定值。 &lt;li&gt;{{}}&lt;/li&gt; 中的 {{}} 引用列表中的每个项目。

    希望这会有所帮助。

    【讨论】:

    • 它是新 SDK(出血边缘构建)而不是稳定构建的错误。
    猜你喜欢
    • 1970-01-01
    • 2015-10-12
    • 1970-01-01
    • 2015-08-15
    • 2014-10-14
    • 1970-01-01
    • 1970-01-01
    • 2016-01-04
    • 2014-04-24
    相关资源
    最近更新 更多