繁体   English   中英

如何在聚合物1.0中具有反应性全局变量

[英]How to have reactive global variables in polymer 1.0

我遵循了https://www.polymer-project.org/0.5/docs/polymer/polymer.html#global上的文档,并了解了可以在给定组件的所有实例之间共享的全局变量。 我想更进一步。 希望全局变量具有反应性。 这意味着,如果实例之一更改了它的值,则它应该在所有其他实例中传播。

<dom-module is="my-writer">
  <template>
    <my-global user="{{username}}"></my-global>
    <button on-click="changeName">Change</button>
  </template>
  <script>
  Polymer({
    is: 'my-writer', 
    changeName: function() { this.username = 'abhilash'; }
  });
  </script>
</dom-module>


<dom-module is="my-reader">
  <template>
    <my-global user="{{username}}"></my-global>
    <span>{{username}}</span>
  </template>
  <script>
  Polymer({
    is: 'my-reader',
    properties: {
      username: { type: String, notify: true, value: 'goje' }
    }
  });
  </script>
</dom-module>

<my-writer></my-writer>
<my-reader></my-reader>

该代码将显示一个button和一个值为“ goje”的span 当我单击按钮时,我希望span更改为显示“ abhilash”。

在Polymer 1.0中,您可以使用iron-meta元素获得类似的效果。 这些共享在整个网页中存储的信息。

https://elements.polymer-project.org/elements/iron-meta

这是一半,缺少的部分实际上是通知/更新。 我认为这实际上取决于您的实现。

在这里可以找到更多的提示和各种实现: Polymer 1.0全局变量

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM