聚合物单态图案元素未升级

Polymer monostate pattern element not upgraded

我在使用 Polymer 0.5.2 的 Firefox 35 中遇到单态模式问题。我的元素看起来像这样:

<polymer-element name="tracer-globals">
  <script>
    (function() {

      var store = document.createElement('tracer-store');

      Polymer({
        publish: {
          store: null
        },

        ready: function() {
          this.store = store;
        }
      });
    })();
  </script>
</polymer-element>

在 Chrome 点 ready 我可以看到商店对象的各种属性,但在 Firefox 上,这些属性从未被定义(甚至在应用程序完成加载很久之后) .

知道为什么吗?

我尝试过的事情:

找到解决方法:

created 回调中延迟加载全局对象:

<polymer-element name="tracer-globals">
  <script>
    (function() {

      var store = null;

      var getStore = function() {
        if (store === null) {
          store = document.createElement('tracer-store');
        }
        return store;
      };

      Polymer({
        publish: {
          store: null
        },

        created: function() {
          this.store = getStore();
        }
      });
    })();
  </script>
</polymer-element>

希望就此工作原理发表评论。