[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 문서에 더 많은 트랜지션과 옵션에 대한 정보가 있으니 참고하시기 바랍니다.