我對淘汰賽還是比較新的,我試圖使用淘汰賽來顯示和隱藏bootstrap選項卡。KO計算不更新UI
基本上我有一個計算觀察到:
self.isActive = ko.computed(function() {
var selected = ko.utils.arrayFirst(self.padParticipant(), function (item) {
return item.ParticipationStatus == 'Active';
});
return selected !== null ? true : false;
});
更新這些選項卡:
<ul class="nav nav-tabs" id="padTabs">
<li data-bind="fadeVisible: !isActive()"><a href="#joinPad">Join PAD</a></li>
<li class="active"><a href="#history">History</a></li>
<li data-bind="fadeVisible: isActive()"><a href="#update">Update Subscription</a></li>
</ul>
的計算工作正常在這個意義上,當我刷新了正確的標籤被隱藏的頁面,但我需要它的工作而不提神。
so padParticipant是一個可觀察數組?是在$(document).ready(){}中設置的整個事情?另外,三元是必要的嗎?你可以說'return selected!== null;'? – dmoss18 2013-03-26 22:28:20
這很奇怪,html是由某些東西自動生成的嗎?爲什麼綁定不同,並從中間失蹤?你可以嘗試在小提琴中複製行爲嗎? – Tyrsius 2013-03-26 22:31:28
padParticipant是一個可觀察數組。是的,整個事件都設置在$(document).ready(function(){}。 – ThreadedLemon 2013-03-26 22:32:37