DOM.RIA (напрям “Новобудови України”)
Svelte - компілятор для перетворення Svelte компонентів в ванільний js
Hello Svelte
Hello Svelte
Hello Svelte
Hello Svelte
transition:fade|blur|fly|slide|scale|draw={params}
in:fade|blur|fly|slide|scale|draw={params}
out:fade|blur|fly|slide|scale|draw={params}
animate:flip={params}
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
}
animation = (
node: HTMLElement,
{ from: DOMRect, to: DOMRect },
params: any
) => {
delay?: number,
duration?: number,
easing?: (t: number) => number,
css?: (t: number, u: number) => string,
tick?: (t: number, u: number) => void
}
let action = (
node: HTMLElement,
parameters: any
) => {
return {
update?: (parameters: any) => void,
destroy?: () => void
}
}
const [send, receive] = crossfade({
duration: number|(d) => number,
fallback: (node: HTMLElement, params: any) => {
delay?: number,
duration?: number,
easing?: (t: number) => number,
css?: (t: number, u: number) => string,
tick?: (t: number, u: number) => void
}
});
in:receive="{{key: number|string}}"
out:send="{{key: number|string}}"
store = tweened(
value: any,
options: {
delay: number,
duration number,
easing (t:number) => t,
interpolate: (a, b) => t => value,
}
)
store = spring(
value: any,
options: {
stiffness: number,
damping: number,
precision: number,
}
)
Svelte API для роботи з анімаціями має певні недоліки:
Але різноманітність можливостей і підходи до реалізації дають можливість робити дуже круті анімації з невеликими затратами ресурсів девайса