以下に定義されているボタンがあります。
<button type="button"
class="btn btn-primary-outline {{if shouldBeActive "active"}}"
data-toggle="button"
{{action "makeActive"}}>MyButton</button>
makeActive
アクションはプロパティを切り替えます。これにより、 ember がテンプレートを再レンダリングするときにshouldBeActive
、ボタンのクラスが取得または失われます。.active
これはすべて素晴らしいことです...ただし、Ember が DOM を更新した後にボタンのクラスを切り替えるための bootstrap.js クリック ハンドラが起動され.active
、ボタンが誤ったトグル状態に切り替えられます。
これを修正する雄弁な方法はありますか?私の唯一の考えは、私は何か愚かなことをすることができるということです...
<button type="button"
class="btn btn-primary-outline {{if (xor shouldBeActive isFirstRender) "active"}}"
data-toggle="button"
{{action "makeActive"}}>MyButton</button>
...アクティブ状態を意図したものとは反対に効果的に設定し、ブートストラップで適切なものに切り替えます。