Polymer.dart支持强制胡须绑定吗?
我无法将胡子绑定到聚合物中。省道组件:Polymer.dart支持强制胡须绑定吗?,dart,dart-polymer,Dart,Dart Polymer,我无法将胡子绑定到聚合物中。省道组件: 。。。 @可观测字符串数据=“testData”; ... 就绪(){ 元素容器=this.shadowRoot.querySelector(“容器”); DocumentFragment newFragement=this.createFragment(“”); container.nodes.add(newFragement); } 胡子绑定没有被解释,我发现的一个解决方法是这个,但我不知道这是否是首选的方式,缺点是我不能强制使用胡子绑定,而不是:
。。。
@可观测字符串数据=“testData”;
...
就绪(){
元素容器=this.shadowRoot.querySelector(“容器”);
DocumentFragment newFragement=this.createFragment(“”);
container.nodes.add(newFragement);
}
胡子绑定没有被解释,我发现的一个解决方法是这个,但我不知道这是否是首选的方式,缺点是我不能强制使用胡子绑定,而不是:
Element newElement=newElement.tag(“示例元素”);
nodeBind(newElement).bind(“myAttribute”,新的PathObserver(“数据”));
container.nodes.add(新元素);
欢迎有任何想法!:-) 我找到了另一种方法,在执行此操作时。createFragment()我可以使用模板标记包装HTML,并对该元素执行templateBind()。 现在,Mustache绑定也在强制创建的HTML节点上进行解释。;) 致以最良好的祝愿,希尔玛 Polymer.dart已经
injectBoundHtml()
...
this.injectBoundHtml(“”,this.$['container']);
另见
起初的
贾斯汀·法格纳尼提供了一个解决办法
另见本期
是的,问题是所有这些绑定和pathobserver实际上都是反射的。我们使用smoke作为实现反射API的库。当你在Dartium中运行时,这个API是用dart:mirrors实现的,但是当你用polymer transformers构建应用程序时,我们用生成的代码来代替mirrors的使用,以帮助dart2js优化你的应用程序
为了生成我们需要的代码,聚合转换器解析你的应用程序,发现模板中的每一个表达式,等等。Dart代码中的表达式(如上面的示例)未被发现,因此我们不知道如何为它们生成代码。这就是为什么没有#命令或#保存项的基本原因
在未来,我想添加一个选项,添加您自己的变压器相位,告诉smoke生成一些额外的符号等等,但这在今天不可用
同时,解决此问题的最佳方法是确保在HTML模板中的某个地方提到这些符号。定义其模板使用这些符号的聚合元素就足够了(即使该元素没有在任何地方使用)
我试过这样做,但也失败了,但我相信这在不久前已经奏效了。我会尝试一下,如果它仍然不起作用,我会提交一个bug;(