聚合物中的主机与目标

Phi*_*phy 8 host target polymer

我试图理解以下上下文中的主机和目标(和元素)取自Polymer PathPolymer Data Flow文档.

请考虑以下图表:

在此输入图像描述

现在考虑以下语句(来自相同的文档):

"当本地DOM中的两个元素绑定到同一属性时,数据似乎从一个元素流向另一个元素,但此流程由主机调解."

到现在为止还挺好.然后继续说:

"由一个元素进行的更改传播到主机,然后主机将更改传播到第二个元素."

第一部分:"由一个元素进行的更改传播到主机..."这是否意味着对第一个元素的更改首先传播到其自己的主机?"元素"实际上是指元素的数据属性吗?

第二部分"然后主机将更改传播到第二个元素." 我们传播到第二个元素的数据属性吗?这里更加令人困惑,因为只有一个元素或数据对象在两个ehhh元素之间共享?

我认为第一个元素的数据属性所做的更改首先转到它自己的主机,然后第一个主机将更改传播回第二个元素的数据元素(这恰好也是第一个元素的数据对象) .

Jac*_*ips 2

<parent-el>
  <user-profile primary-address="{{addr}}"></user-profile>
  <address-card address="{{addr}}"></address-card>
</parent-el>
Run Code Online (Sandbox Code Playgroud)

如果任一元素发生更改addr(子元素可以使用它们想要的任何名称),则更改将传播到父元素,然后传播到另一个元素。

如果使用[[addr]]任一绑定,则更改只会从父级传播到子级。

请注意,两个子元素都应notify: true设置相关属性(primaryAddress 或 address),以便将更改通知父元素,并完全设置双向绑定。

另请注意,这仅侦听整个对象的更改。要监听子属性的更改,例如addr.street父级应该添加一个观察者。有关详细信息,请参阅复杂观察者