如何初始化进入页面中声明的自定义元素的实例?
例如:
<!-- index.html -->
<polymer-element name='my-elm' attributes="count" noscript>
<template>
<span>{{count}}</span>
</template>
</polymer-element>
<my-elm id="my-elm"></my-elm>
// index.dart
(querySelector("#my-elm") as dynamic).count = 1;
当我尝试初始化
my-elm
聚合物元素实例的属性时,将得到以下执行:Breaking on exception: Class 'HtmlElement' has no instance setter'count='.
我的代码有什么问题?
最佳答案
编辑
您只能以这种方式访问支持类的字段。
如果您没有类(class),则可以使用
querySelector("#my-elm").attributes['count'] = '1'; // attributes can only store strings
编辑END
您需要将index.dart中的代码延迟到Polymer准备就绪为止
import "package:polymer/polymer.dart";
main() {
initPolymer().run(() {
// code here works most of the time
Polymer.onReady.then(() {
// some things must wait until onReady callback is called
(querySelector("#my-elm") as dynamic).count = 1;
});
});
}
关于dart - 如何初始化在输入页面中声明的自定义元素的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24578121/