Полимерный моноструктурный элемент не обновлен
У меня возникли проблемы с моностатом в Firefox 35 с использованием Polymer 0.5.2. Мой элемент выглядит так:
<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
Я вижу различные атрибуты объекта store, но в Firefox атрибуты никогда не определяются (даже после завершения загрузки приложения).
Есть идеи почему?
Вещи, которые я пробовал:
- обеспечивать
tracer-store
импортируется раньшеtracer-globals
,
1 ответ
Решение
Найден обходной путь:
Ленивая загрузка глобального объекта в 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>
Буду признателен за комментарии о том, почему это работает.