hostAttributes 和聚合物中的属性有什么区别?
What are difference between hostAttributes and properties in polymer?
我正在从 0.5 迁移到 1.0。
在阅读时,我注意到使用 hostAttributes
和 properties
两种不同的属性声明方式。
这两个有什么区别?
宿主属性是与元素对应的 Javascript 属性(您在 properties
中声明)不匹配的属性。这包括 class
、tabindex
、data-*
属性、aria-roles 等属性。要在创建时声明它们,您必须在 hostAttributes
对象中设置它们。如果要将值绑定到它们中,则必须使用 $=
(调用 Element.setAttribute
)而不是 =
.
来源:
如果自定义元素需要在创建时设置 HTML 属性,则可以在原型上的 hostAttributes 属性 中声明属性,其中键是属性名称,值是要分配的值。
但是现在,由于已从元素元数据中删除了 listeners 和 hostAttributes
我们可以使用 _ensureAttribute 作为替代方法来定义这些类型的属性
例如:-
this._ensureAttribute('tabindex', 0);
您可以在 ready
中声明所有此类属性
我正在从 0.5 迁移到 1.0。
在阅读时,我注意到使用 hostAttributes
和 properties
两种不同的属性声明方式。
这两个有什么区别?
宿主属性是与元素对应的 Javascript 属性(您在 properties
中声明)不匹配的属性。这包括 class
、tabindex
、data-*
属性、aria-roles 等属性。要在创建时声明它们,您必须在 hostAttributes
对象中设置它们。如果要将值绑定到它们中,则必须使用 $=
(调用 Element.setAttribute
)而不是 =
.
来源:
如果自定义元素需要在创建时设置 HTML 属性,则可以在原型上的 hostAttributes 属性 中声明属性,其中键是属性名称,值是要分配的值。
但是现在,由于已从元素元数据中删除了 listeners 和 hostAttributes
我们可以使用 _ensureAttribute 作为替代方法来定义这些类型的属性
例如:-
this._ensureAttribute('tabindex', 0); 您可以在 ready
中声明所有此类属性