Почему функция выполняется при нажатии на любую кнопку?

Рейтинг: 0Ответов: 0Опубликовано: 13.01.2023

Существует объект в котором одно из свойств - action содержит функцию, которая должна выполняться при щелчке на кнопку.

Проблема в том, что эта функция срабатывает не только при щелчке на эту кнопку, но и вообще на любые кнопки даже в других компонентах.

Содержимое функции handleLogout значения не имеет. Она всегда выполняется даже если написать там просто console.log("hello world")

Почему так происходит? Как сделать так, чтобы она срабатывала только при щелчке на нужную кнопку?

<script lang="ts">
import { Button } from "sveltestrap";
import { handleLogOut } from "./HandleLogout";

  let btnTest = {
    role: null,
    icon: "box-arrow-left",
    name: "Выход",
    url: "/",
    action: JSON.stringify(handleLogout())
  }

  const handleLogOutBtnTest = (btn) => {    
    if (btn.action) {
      btn.action()      
    }
    navigate(btn.url, { replace: true });  
    adminPagetoggle()      
  };
</script>

<Button on:click={() => handleLogOutBtnTest(btnTest)}/>

Ответы

Ответов пока нет.