Код: Выделить всё
const template = document.createElement('template');
template.innerHTML = `
button, p {
display: inline-block;
}
-
0
+
`;
class XCounter extends HTMLElement {
set value(value) {
this._value = value;
this.valueElement.innerText = this._value;
}
get value() {
return this._value;
}
constructor() {
super();
this._value = 0;
this.root = this.attachShadow({ mode: 'open' });
this.root.appendChild(template.content.cloneNode(true));
this.valueElement = this.root.querySelector('p');
this.incrementButton = this.root.querySelectorAll('button')[1];
this.decrementButton = this.root.querySelectorAll('button')[0];
this.incrementButton
.addEventListener('click', (e) => this.value++);
this.decrementButton
.addEventListener('click', (e) => this.value--);
}
}
customElements.define('x-counter', XCounter);
В каждом примере, который я просматриваю, есть смешанные веб-компоненты. Мне хотелось бы иметь разделение задач, но я не знаю, как это сделать с компонентами. Не могли бы вы предоставить пример кода? Спасибо.
Подробнее здесь: https://stackoverflow.com/questions/550 ... -load-them
Мобильная версия