Проблема в том, что вы добавляете точку с запятой в свой стиль.
Точка с запятой используется только синтаксическим анализатором CSS, чтобы узнать разрывы между значениями CSS.Вам не нужно одно после последнего значения, и вы не можете использовать их при установке значения в атрибуте стиля элемента.
Я упростил ваш код для демонстрации.
С точкой с запятой
const template = `<div id="label">Change this text</div>`;
class GeneratorView extends HTMLElement {
connectedCallback() {
this.innerHTML = template;
const label = this.querySelector("#label");
label.innerText = "The text has changed";
label.style.border = "4px solid red;"
}
}
customElements.define('generator-view', GeneratorView);
<generator-view></generator-view>
Без точки с запятой
const template = `<div id="label">Change this text</div>`;
class GeneratorView extends HTMLElement {
connectedCallback() {
this.innerHTML = template;
const label = this.querySelector("#label");
label.innerText = "The text has changed";
label.style.border = "4px solid red";
}
}
customElements.define('generator-view', GeneratorView);
<generator-view></generator-view>