Polymer" reflectToAttribute"之间的确切区别是什么?并且"通知"?

时间:2017-01-16 06:11:56

标签: polymer polymer-1.0

Polymer properties object支持两个不同的键,我不太了解reflectToAttributenotify之间的区别。

reflectToAttribute表示当值发生变化时,主机节点上的属性会发生变化。

notify表示它使该属性可用于双向绑定。

阿伦这些同样的事情?如果您将notify设置为true,那么您还有什么理由需要reflectToAttribute吗?

有人可以向我解释这些密钥是如何相互关联的吗?谢谢!

2 个答案:

答案 0 :(得分:10)

null是将属性添加到DOM中。这样您可以将其用作CSS中的选择器

reflectToAttribute与您提出的双向约束问题相同。

这是两个完全不同的目的。

答案 1 :(得分:0)

如果在component中,您将reflectToAttribute: true分配给名为prop的属性,则prop将作为属性出现在该component的元素标记中,可以看到开发工具:

<component prop></component>

如前所述,在component中,您可以在样式部分使用prop-as-attribute::host([prop]) div { background-color: green }

litElement 中,我们只需编写:reflect: true

如您所知,如果您将notify: true分配给特定道具,则其值将反映在父级的对应道具中(2向绑定)。

litElement 中,notify不存在。相反,要将信息传递回父级,可以在子级中调度自定义事件,然后在父级中侦听该事件。

当我第一次尝试Polymer时,最初感到很困惑,因为我认为为了通知父项更改,我们必须将prop反映为属性,但事实并非如此。