是否可以组合使用相同值的Knockout Bindings?

时间:2016-02-22 10:49:38

标签: javascript knockout.js

我注意到有几个地方我想使用awk '{c="1,3";split(c,cols,/,/);for(i in cols){if ($cols[i] ~ /A:|C:|T:|G:/){$cols[i]=0; $NF="W"}}}1' file | column -t if绑定。

我倾向于使用visible,因此它不会执行任何具有自己数据绑定的子节点中可能发生的操作。我想使用if,因为使用visible并不隐藏根元素,只隐藏内部元素,这意味着它可能导致布局问题。

无论如何,除了描述之外,我能否做到这一点......

if

但是这样吗?

<div class="exampleDiv" data-bind="visible: active(), if: active()">

1 个答案:

答案 0 :(得分:1)

可以 write a custom binding handler来“包装”现有的绑定。在init部分中,您可以调用正在包装的绑定的init方法,并在update部分中调用其更新。

您还可以通过using the if binding in a virtual element围绕要隐藏的div获得所需的效果:

<!-- ko if: active() -->
  <div class="exampleDiv">...</div>
<!-- /ko -->