Svelte kit으로 추첨 도구를 만들었습니다.
그 도구는 입력 항목을 저장하지 않기 때문이다
입력 항목을 LocalStorage에 저장하는 추첨 도구를 만들어 보았습니다
만들어진 물건
사용된 기술
제비뽑기 애니메이션 정보
Svelte에서 구성 요소에 transsition 애니메이션을 간단하게 적용할 수 있습니다.
예를 들어 리스트에 지정transtion:slide
만 하면 리스트를 추가/삭제할 때 따뜻한 느낌을 줄 수 있다 {#each items as item}
<div transition:slide class="flex justify-center items-center ">
...
</div>
{/each}
Transition은 준비된 것 뿐만 아니라 다음과 같이 오리지널 것을 설정할 수 있다
참조: https://svelte.dev/docs#transition_fn function lotteryAnimation(node, option) {
let items = $lotteryItemStore.filter((item) => item.enabled && item.text);
items = shuffle(items);
return {
duration: 2000,
easing: cubicOut,
tick: (t) => {
const i = ~~(t * 100) % items.length;
node.textContent = items[i].text;
}
};
}
// usage
// <div transition:lotteryAnimation>
transtion:hoge
에서 지정한 함수는 다음과 같다node
option
의 두 개를 매개 변수로 한다transition = (node: HTMLElement, params: any) => {
delay?: number,
duration?: number,
easing?: (t: number) => number,
css?: (t: number, u: number) => string,
tick?: (t: number, u: number) => void
}
tick
함수는 0-1의 값t
을 매개 변수로 한다
이것t
은 easing
에서 지정한 함수로 생성됩니다.
이렇게 되면 처음부터 매우 가늘게 전환되어 마지막 단계는 천천히 전환할 수 있다🎉
총결산
추첨 같은 거 있으면 쓸 수 있으면 좋겠네요.
무슨 일이 있으면 PR 같은 것도 던져주면 좋겠네요
Reference
이 문제에 관하여(Svelte kit으로 추첨 도구를 만들었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tamanugi/items/61676a412dffa8f4a984
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
{#each items as item}
<div transition:slide class="flex justify-center items-center ">
...
</div>
{/each}
function lotteryAnimation(node, option) {
let items = $lotteryItemStore.filter((item) => item.enabled && item.text);
items = shuffle(items);
return {
duration: 2000,
easing: cubicOut,
tick: (t) => {
const i = ~~(t * 100) % items.length;
node.textContent = items[i].text;
}
};
}
// usage
// <div transition:lotteryAnimation>
transition = (node: HTMLElement, params: any) => {
delay?: number,
duration?: number,
easing?: (t: number) => number,
css?: (t: number, u: number) => string,
tick?: (t: number, u: number) => void
}
추첨 같은 거 있으면 쓸 수 있으면 좋겠네요.
무슨 일이 있으면 PR 같은 것도 던져주면 좋겠네요
Reference
이 문제에 관하여(Svelte kit으로 추첨 도구를 만들었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tamanugi/items/61676a412dffa8f4a984텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)