Mam podkomponent, który chciałbym pokazać/ukryć w animowany sposób, tak jak komponent Bootstrap'a zwijania. Przycisk uruchamiający widoczność znajduje się w widoku zewnętrznym (nie wewnątrz podprzestrzenia).Jak pokazać/ukryć animowany komponent w Aurelia
Podczas korzystania z podstawową składnię
<compose view-model="edit-x" model.bind="x" show.bind="shouldShow"></compose>
(lub odpowiednią składnię z niestandardowych html nazwy element), to działa, ale po prostu wydaje (nie animowane).
Propozycja 1 - użyj animacja Aurelia
Próbowałem dodać class='au-animate'
bez efektu (w zestawie również Aurelia-animator-css w main.js do tego).
Propozycja 2 - Wykorzystanie bootstrap
Innym możliwym rozwiązaniem może być na przykład w celu wykorzystania bootstrap i przechodzi w drugi parametr (widoczne) do składnika, wtedy składnik w pewien sposób kontrolować tej zmiennej i połączenia $('.collapse').collapse('toggle')
. Jak przekażę dwie zmienne w model.bind
? I jak to monitorować? Czy można użyć @bindable
dla settera ?
Propozycja 3 - Korzystanie z zewnątrz Bootstrap komponentu
Może najłatwiej byłoby nazwać $('#subcomponentName .collapse').collapse('toggle')
z widokiem na zewnątrz? To takie brzydkie? Robię odnośniki w podglądzie z widoku zewnętrznego, który może przekracza pewne granice, ale kod będzie mały?
aurelia-animator-css tylko kopie, jeśli widok zostanie usunięty z DOM, którego 'show.bind' nie robi, to tylko ukrywa element. Zamiast tego spróbuj 'if.bind =" shouldShow "'. – Gusten
@Gusten, czy chcesz przesłać to jako odpowiedź? Myślę, że rozwiązuje problem –