Пользовательские веб-компоненты vanilla JavaScript - PullRequest
0 голосов
/ 30 марта 2020

Есть ли способ передать параметры в пользовательский веб-компонент? Мне нужны параметры для моего компонента. Класс расширен html коллекция.

class CustomDropdown extends HTMLElement{

    constructor(){

        super();

        this.shadow = this.attachShadow({ mode : 'open' });

        this.setAttribute('expanded', there should be some parameter );

    }
}

1 Ответ

1 голос
/ 30 марта 2020

Обычно, когда вы используете свой пользовательский компонент, вы передаете параметры как атрибуты:

<custom-dropw-down expanded="true"></custom-drop-down>

Затем, в хуке connectedCallback вы можете получить их:

connectedCallback() {
    const isExpanded = this.getAttribute('expanded');
}

Если если вы хотите установить атрибут для отображаемого DOM, вы должны также сделать это после того, как компонент будет визуализирован (например, в хуке connectedCallback):

connectedCallback() {
    this.setAttribute('expanded', 'true');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...