我想在兩個條件之一爲真時將可見屬性綁定爲true。當我做一個或另一個綁定而不是當我把類似下面的將可見參數綁定到Knockout中的'或'語句
<tr data-bind="visible: active || $parent.displayDeactive">....</tr>
我的代碼的東西工程||在那裏。我還沒有找到任何文件說我可以在這個綁定中放置任何邏輯,但是如果我不能直接做到這一點,最好的辦法是做什麼,因爲我綁定了一個模板的屬性和$的一個對象父視圖模型。
我想在兩個條件之一爲真時將可見屬性綁定爲true。當我做一個或另一個綁定而不是當我把類似下面的將可見參數綁定到Knockout中的'或'語句
<tr data-bind="visible: active || $parent.displayDeactive">....</tr>
我的代碼的東西工程||在那裏。我還沒有找到任何文件說我可以在這個綁定中放置任何邏輯,但是如果我不能直接做到這一點,最好的辦法是做什麼,因爲我綁定了一個模板的屬性和$的一個對象父視圖模型。
如果您在表達式中使用observable的值,則需要將它們作爲函數引用。所以,如果active
和displayDeactive
是可觀察你會怎麼做:
data-bind="visible: active() || $parent.displayDeactive()"
有將其移動到視圖模型的幾種方法,你可以:
因爲你正在評估它們,所以在觀察結果後面加上parens。
<input type="checkbox" data-bind="checked:displayDeactive"> Display deactive</input>
<br/><br/>
<table>
<tbody data-bind="foreach: products">
<tr data-bind="visible: active() || $parent.displayDeactive()">
<td><span data-bind="text:name"></span></td>
</tr>
</tbody>
</table>
你可以在這裏找到完整的代碼:http://jsfiddle.net/johnpapa/gsnUs/
你可以對計算表達式(剛纔看到的@RPNiemeyer迴應與模板化項目使用一個計算屬性太...我+1 「D)。
謝謝,我知道這會變得簡單。並感謝您在Knockout上的所有工作。我當然很感激它。 – PlTaylor 2012-01-10 13:33:06