Svelte
Svelte + gsap.context
官方 gsap-frameworks 模式:onMount 建立、cleanup 時 ctx.revert()、selector 作用域。
導讀
框架裡正確掛載與清理:onMount 建動畫、gsap.context 限縮 selector、unmount 時 ctx.revert()。
- 看什麼
- 字母 boxes 進場;下方 bar 的 progress 寫回 Svelte state。
- 怎麼試
- 調參數後離開再回來,確認沒有殘留 markers / 重複 trigger。
Skill 對應:gsap.context, onMount cleanup, scoped selectors
onMount後再建立動畫(DOM 已存在)gsap.context(fn, container)限制 selector 範圍- 回傳
() => ctx.revert()做 cleanup,避免 SPA 切頁後 trigger 殘留
onMount(() => {
const ctx = gsap.context(() => {
gsap.from(".box", { /* ... */ scrollTrigger: {...} });
}, container);
return () => ctx.revert();
});S
V
E
L
T
E
progress 寫回 Svelte state:0% · active: false