这是可能在多个布尔值上使用Knockout的if binding?Knockout.js“if Binding”on multiple booleans
如
<div data-bind="if: (property.aTrueValue && property.anotherTrueValue)">...
我已经尝试了很多不同的语法,但似乎无法找到正确的语法。 我不确定这甚至是可能的。
这是可能在多个布尔值上使用Knockout的if binding?Knockout.js“if Binding”on multiple booleans
如
<div data-bind="if: (property.aTrueValue && property.anotherTrueValue)">...
我已经尝试了很多不同的语法,但似乎无法找到正确的语法。 我不确定这甚至是可能的。
当Knockout处理你的绑定时,它首先评估你的表情。
如果表达式导致可观察项,那么它会评估观察值以方便获取if:工作的最终值。
于是两人以下工作相同
<div data-bind="if: foo"></div>
<div data-bind="if: foo()"></div>
一旦你离开可观察结束简单表达式的世界中,你可能也想留下的糖分和总自己评估观测(对于理智,如果没有其他)。
请尝试以下
<div data-bind="if: (property.aTrueValue() && property.anotherTrueValue())">...
你可以 - 如果在绑定只是需要任意表达式。当这样做不仅仅是引用可观察到的那样的值,你需要实际调用观察到,像这样:
<div data-bind="if: (property.aTrueValue() && property.anotherTrueValue())">...
这里的工作jsfiddle。
谢谢,这正是我需要做的。 – 2013-03-11 14:06:48