Size: a a a

2021 March 20

МТ

Марк Танащук... in Svelte [svelt]
Очень грубо говоря
источник

МТ

Марк Танащук... in Svelte [svelt]
Марк Танащук
<script>
 function animate(node, isVisible) {
   gsap.to(node, {
     // initAnimation
   })

   return {
     update(isVisible) {
       gsap.to(node, {
         //destroyAnimation,
         onComplete: () => visible = false
      })
     }
   }
 }
</script>

{#if visible}
 <div use:animate={isVisible}>content</div>
{/if}
Написано в Telegram IDE, так что на корректность кода не претендую

Но думаю концепт передал
источник

КС

Кирилл Спасибович... in Svelte [svelt]
так и как надо переключить в false в этой ситуации ?
источник

МТ

Марк Танащук... in Svelte [svelt]
isVisible = false вместо visible = false
источник

МТ

Марк Танащук... in Svelte [svelt]
И экшн по изменению из true в false разрулит
источник

КС

Кирилл Спасибович... in Svelte [svelt]
а.. т.е. нужна ещё одна переменная ?
источник

МТ

Марк Танащук... in Svelte [svelt]
Кирилл Спасибович
а.. т.е. нужна ещё одна переменная ?
Да

Можно и по другому с вызовами функций, если удобнее
источник

МТ

Марк Танащук... in Svelte [svelt]
Но создание переменной с каким нибудь префиксом gsap имхо чуть лучше
источник

КС

Кирилл Спасибович... in Svelte [svelt]
да не, с функциями ещё более императивно было бы
источник

КС

Кирилл Спасибович... in Svelte [svelt]
но нужно чтобы visible делался true когда isVisible сделали true
источник

КС

Кирилл Спасибович... in Svelte [svelt]
а то переключать две переменные вместо одной как-то не очень
источник

КС

Кирилл Спасибович... in Svelte [svelt]
типа

$: if (isVisible) visible = true;
источник

МТ

Марк Танащук... in Svelte [svelt]
Кирилл Спасибович
но нужно чтобы visible делался true когда isVisible сделали true
Достаточно visible = isVisible = true сделать вроде

Тогда див снова замаунтится и вызовется экшн
источник

КС

Кирилл Спасибович... in Svelte [svelt]
я просто хочу спрятать всю эту ерунду подальше
источник

КС

Кирилл Спасибович... in Svelte [svelt]
т.е. в идеале переключать так же одну переменную как и переключал раньше
источник

МТ

Марк Танащук... in Svelte [svelt]
Кирилл Спасибович
т.е. в идеале переключать так же одну переменную как и переключал раньше
Проблема в том что svelte ни черта не знает ни о гсапах ни о jquer'ях, так что это просто рай для багов
источник

КС

Кирилл Спасибович... in Svelte [svelt]
дак и не надо знать
источник

КС

Кирилл Спасибович... in Svelte [svelt]
просто подожди пока я не зарезолвлю промис
источник

КС

Кирилл Спасибович... in Svelte [svelt]
чем это плохо ?
источник

МТ

Марк Танащук... in Svelte [svelt]
Кирилл Спасибович
чем это плохо ?
Судя по всему, это может быть плохо потому что никто не знает, почему это может быть плохо
источник