KnockoutJSはこれまでのところ非常に使いやすくなっていますが、フレームワークは初めてです。タブ付きのインターフェイス、たとえば4つのリンクと共通の表示領域を作成しようとしています。リンクをクリックすると、Knockoutのテンプレートシステムが利用され、テンプレートが切り替わります。これはうまく機能していますが、テンプレートの切り替えの間に何らかのアニメーションを追加したいと思います。
どうすればこれを達成できますか?beforeRemove / afterAddについて少し読みましたが、これはobservableArraysにのみ当てはまるようです。KnockoutJSがアニメーション/カスタムバインディングをサポートしていることは知っています(ページ上の他の要素に対してより簡単に使用しています)。
私のアプローチ全体が正しくない場合、簡単にトランジションを取得するためにタブ付きインターフェイスを実行するためのより良い方法はありますか?
これが今の私のコードです。
HTML:
<div class="Page">
<span data-bind="template: {name: current_page()}"></span>
</div>
<script type="text/html" id="Home">
<!-- Home content -->
</script>
<script type="text/html" id="Tab1">
<!-- Tab1 content -->
</script>
Javascript(KnockoutのViewModel):
this.current_page = ko.observable("Home")
//later on...
this.current_page("Tab1");