[英]Binding to a method using Polymer
使用Polymer时,是否可以绑定到方法而不是值? 例如
<div>{{someMethod()}}</div>
要么
<div>{{someMethod}}</div>
从来源和文档来看,事实并非如此。 只是想确认一下。
不是直接的,但有几种方法可能实现你想要的。 我假设你想要转换数据......?
将属性定义为ES5 getter
有点作弊,但您可以将属性定义为getter,然后围绕返回的值包装自定义逻辑。
<div>{{likes}}</div> Polymer('my-tag', { firstName: 'John', get likes() { return this.firstName + ' ' + lastName + ' likes bread'; } });
演示: http : //jsbin.com/nuyuqote/3/edit
注意:谨慎使用此选购件。 绑定到getter在Object.observe()
下Object.observe()
,如果支持,Polymer将使用它。 请参阅Scott的评论如下。
定制过滤器
尚未记录:(
<div>{{'thingy' | upperCaseFilter}}</div> Polymer('my-tag', { upperCaseFilter: function(value) { return value.toUpperCase(); } });
<prop>Changed
请参阅Scott的评论如下。
顺便说一句,我们在Polymer中没有类似{{someMethod()}}
之一就是执行JavaScript。 它通常被认为是一种反模式,可以像onclick="someMethod()"
因为很容易让自己受到像XSS攻击这样的事情。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.