Учитывая определение полимерного элементадинамически создавать элементы в полимере и настройка атрибуты
<dom-module id="custom-element">
<template>
<h1>I expect to be green</h1>
</template>
<script>
Polymer({
is: 'custom-element',
properties: {
color: {
type: String,
value: 'red'
}
},
ready: function() {
this.style.color = this.color;
}
});
</script>
</dom-module>
Я хотел бы ожидать, что следующие два будет производить один и тот же результат:
(в разметке)
<body> <custom-element color="green"></custom-element> </body>
(в JS)
var customElement = document.createElement('custom-element'); customElement.color = 'green'; document.body.appendChild(customElement);
Но на самом деле это не так, как это кажется, что свойства устанавливаются и «готовая» функция полимера запускается перед customElement добавляется к document.body.
Так что я не могу динамически создавать (в JS) пользовательские элементы и устанавливать их исходные свойства, отличные от свойств по умолчанию.
Как вы предлагаете мне это сделать?
Спасибо!
В связи с обстоятельствами моего конкретного проекта я вынужден выполнить инициализацию в обратном вызове ready(). Я могу показать вам, почему мне это нужно, но дело более сложное, чем первоначальный вопрос, который я приспособил для упрощения. –
В этом случае вы можете установить интервал в готовом состоянии, который будет в основном готов к работе до завершения вложения. – a1626
Мне удалось переместить всю инициализацию в 'прикрепленный', поэтому я пойду с этим в качестве принятого ответа. Благодаря! –