Передача параметров в функцию svelte - PullRequest
1 голос
/ 27 марта 2020

Я новичок в Svelte, так что простите меня, если это очевидно, но я пробовал решения, которые я видел в других сообщениях, и ни одно из них, похоже, не сработало.

Функция вызывается следующим образом: <div on:mouseover={() => exampleFunction("1")}>

и записывается в JS как:

function exampleFunction(id){
document.getElementById(`item-${id}`).classList.remove('hidden');
}

Идентификатор 'id' отображается как неопределенный в функция, поэтому я понял, что ошибка, откуда она передается.

Спасибо за помощь заранее!

1 Ответ

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

Проверьте этот скриншот, он работает

Запустите его здесь: https://svelte.dev/repl/501e5d478bbe4bc5a5e9f6a67523d080?version=3.16.0

enter image description here

Код:

<script>

    function exampleFunction(id){
  console.log("Before removing hidden",document.getElementById(`item-${id}`).classList);
        document.getElementById(`item-${id}`).classList.remove('hidden');
      console.log("After removing hidden",document.getElementById(`item-${id}`).classList); 
  }
</script>

<button on:mouseover={() => exampleFunction("1")}>
    Hover here
</button>
<span id="item-1" class="active hidden"></span>
...