問題
LiveView は、開いている要素を折りたたみます。
詳細
ページの読み込み時に折りたたまれて始まる要素があります。
<a class="collapse_trigger">...</a>
<div class="is-collapsible">
# content updated by liveview
</div>
ユーザーが折りたたみ可能オブジェクトをクリックすると、折りたたみ可能オブジェクトにはクラスがあり.is-active
ます。
<a class="collapse_trigger">...</a>
<div class="is-collapsible is-active">
# content
</div>
しかし、ライブビューはそのクラスを削除します。ライブビューが親要素を無視する<div class="is-collapsible is-active">
が、子要素を処理することを確認する方法はありますか? 私の最初の考えはでしたphx-update="ignore"
。しかし今、折りたたみ可能なロジックをバックエンドに入れる必要があると考えています。:/
追加情報
CSS を 1 つ変更してbulma-collapsibleを使用します。
// the following is necessary because liveview does not work well with the bulma-collapsible. Otherwise elements would stay open but can be closed by clicking them twice.
.is-collapsible{
height: 0;
&.is-active{
height: auto;
}
}