[javascript] Svelte에서 페이드 인/아웃 및 전환 효과를 적용하는 방법은 어떻게 되나요?

Svelte에서 테이블 전환 효과를 구현하기 위해 animate 디렉티브와 fade 트랜지션을 사용할 수 있습니다. 이는 요소가 나타났다가 사라지는 효과를 적용하는 데 사용됩니다.

먼저 animate 디렉티브를 사용하여 페이드 인/아웃 효과를 적용할 요소를 선택합니다. 선택한 요소에 fade 트랜지션을 추가합니다.


<script>
  import { fade } from 'svelte/transition';
  
  let visible = true;
</script>

<style>
  div {
    width: 200px;
    height: 200px;
    background-color: #f00;
  }
</style>

<button on:click={() => visible = !visible}>
  토글
</button>

<div animate:fade={{ duration: 500, delay: 0, easing: cubicInOut, fallback: div }}>
  {#if visible}
    나타남
  {:else}
    사라짐
  {/if}
</div>

위의 예제에서는 fade 트랜지션을 사용하여 요소가 페이드 인/아웃되는 효과를 제공합니다. duration은 애니메이션의 지속 시간을 나타내며, delay는 애니메이션이 시작되기 전의 대기 시간을 나타냅니다. easing은 애니메이션의 가속도를 조절하는 함수를 지정합니다. fallback은 애니메이션을 지원하지 않는 브라우저에서 대체할 요소를 지정합니다.

위의 코드를 실행하여 토글 버튼을 클릭하면 요소가 부드럽게 나타났다가 사라지는 페이드 인/아웃 효과를 확인할 수 있습니다.

Svelte transitions 문서에 더 많은 트랜지션과 옵션에 대한 정보가 있으니 참고하시기 바랍니다.