svelte/animate
svelte/animate 模块导出一个用于 svelte 动画的函数。
filp
animate:flip={params}
flip 函数计算元素的开始和结束位置,并通过转换x、y坐标对他们设置动画。flip 主张的是First,Last,Invert,Play。
flip 接受下面这些参数:
delay(number,默认 0) - 开始前的毫秒数duration(number|function, 默认d => Math.sqrt(d) * 120) - 参见下文easing(function,cubicOut) - 缓动函数duration可以通过下面任一形式定义:- 一个
number,以毫秒为单位 - 一个函数,
distance: number => duration: number,接受distance的元素将以像素为单位进行移动,并以毫秒为单位返回持续的时间。支持指定相对于每个元素移动的持续时间。
<script>import { flip } from 'svelte/animate';import { quintOut } from 'svelte/easing';let list = [1, 2, 3];</script>{#each list as n (n)}<div animate:flip="{{delay: 250, duration: 250, easing: quintOut}}">{n}</div>{/each}
你可以在 animate tutorial 看到完整的示例。
