Как получить пользовательскую переменную-член элемента из встроенного обработчика событий?

Поскольку я хотел бы, чтобы пользовательский элемент был автономным, я не хочу помещать ссылку на переменную-член в объект window.

customElements.define( 'component-one', class extends HTMLElement {
    connectedCallback() {
        this.memberVariable="This is a member variable";
        this.innerHTML = "<button onclick='//How do I reference the above this.memberVariable here?'>This is a button</button>";
    }
}):

person user2939415    schedule 18.09.2019    source источник


Ответы (1)


Я считаю, что что-то вроде этого поможет -:

customElements.define( 'component-one', class extends HTMLElement {
    connectedCallback() {
        var self = this;
        this.memberVariable="This is a member variable";
        this.innerHTML = "<button onclick='self.memberVariable // use this variable as required'>This is a button</button>";
    }
}):
person Abhisar Tripathi    schedule 18.09.2019
comment
Я протестировал этот код, и оказалось, что self относится к window внутри обработчика событий. Вам удалось заставить этот код работать? - person user2939415; 18.09.2019