Я использую Svelte 3 с возможностью создания пользовательских элементов с помощью Shadow DOM, но не могу понять, как получить ссылку на пользовательский элемент-оболочку (HTMLElement), чтобы я мог присоединять обработчики событий и манипулировать атрибутами. У меня есть что-то вроде этого:
<svelte:options tag="custom-button"/>
<script>
import { onMount } from 'svelte';
function _onClick(e) {
this.setAttribute('pressed', null);
}
var _boundClick = _onClick.bind(this);
onMount((e) => {
this.addEventListener('click', _boundClick);
return () => {
this.removeEventListener('click', _boundClick);
};
});
</script>
<style>
:host {
display: block;
}
/* Other Styling */
</style>
<slot></slot>
Биты "this" не работают (они работают в обычном обычном элементе Vanilla). Есть ли в Svelte какой-то особый способ получения ссылки на элемент host в скрипте?
Спасибо