聚合物单态图案元素未升级
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 上,这些属性从未被定义(甚至在应用程序完成加载很久之后) .
知道为什么吗?
我尝试过的事情:
- 确保
tracer-store
在 tracer-globals
之前导入。
找到解决方法:
在 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>
希望就此工作原理发表评论。
我在使用 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 上,这些属性从未被定义(甚至在应用程序完成加载很久之后) .
知道为什么吗?
我尝试过的事情:
- 确保
tracer-store
在tracer-globals
之前导入。
找到解决方法:
在 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>
希望就此工作原理发表评论。