Polymer 0.8:HTML 标签复杂属性内的数据绑定
Polymer 0.8: Data binding inside a HTML tag complex attribute
我了解到在较新的 Polymer 版本 0.8 中绑定到标签内的属性应该在 $ 符号之后。它是这样工作的:
<tag attribute$="{{DATA}}">
例如这很好用:
href$="{{url}}"
但是当属性变得更复杂时,它就不起作用了,例如在我的代码示例中:
<a style$="background-image: url({{backgroundimage}});">
这是一个字符串数据属性。
它在 0.8 中是否像在 0.5 中一样受到支持?
0.8 目前不支持像这样的复杂绑定。相反,您可能想要创建 a computed property 并使用它。
顺便说一句,如果您需要使用在元素上没有相应 属性 的属性,则只需使用 $={{ }}
语法。因为 HTMLAnchorElement(<a>
标签)有一个 href
属性,在这种情况下你不必使用美元符号,你可以使用 [=13= 创建一个常规绑定].
换句话说:
href="{{site}}" means "bind this.site to element.href"
href$="{{site}}" means "bind this.site to element.attributes.href.value"
在处理诸如隐藏或禁用之类的布尔属性时,通常只需要 $ 语法。或者在 JavaScript.
中某个元素没有对应的 属性 的情况
我了解到在较新的 Polymer 版本 0.8 中绑定到标签内的属性应该在 $ 符号之后。它是这样工作的:
<tag attribute$="{{DATA}}">
例如这很好用:
href$="{{url}}"
但是当属性变得更复杂时,它就不起作用了,例如在我的代码示例中:
<a style$="background-image: url({{backgroundimage}});">
这是一个字符串数据属性。
它在 0.8 中是否像在 0.5 中一样受到支持?
0.8 目前不支持像这样的复杂绑定。相反,您可能想要创建 a computed property 并使用它。
顺便说一句,如果您需要使用在元素上没有相应 属性 的属性,则只需使用 $={{ }}
语法。因为 HTMLAnchorElement(<a>
标签)有一个 href
属性,在这种情况下你不必使用美元符号,你可以使用 [=13= 创建一个常规绑定].
换句话说:
href="{{site}}" means "bind this.site to element.href" href$="{{site}}" means "bind this.site to element.attributes.href.value"
在处理诸如隐藏或禁用之类的布尔属性时,通常只需要 $ 语法。或者在 JavaScript.
中某个元素没有对应的 属性 的情况