很简单的问题。
假设我的view()中有以下HTML:
<a id="btnXYZ" class="" data-bind="click: editAction">Button</a>
如果单击,将执行
editAction
的简单锚标记。现在,如果我有这样的事情:
<a id="btnXYZ" class="" data-bind="click: editAction, if: isOwner(ref)">Button</a>
假设
isOwner(ref)
计算结果为true,我看到没有文本的锚点。不好。预期结果将与之前相同(第一个示例)。
现在让我们说我有这样的事情:
<div class="">
<a id="btnX" class="" data-bind="click: editAction, if: isOwner(ref)">Button</a>
<a id="btnY" class="" data-bind="click: editAction, if: isOwner(ref)">Button</a>
<a id="btnZ" class="" data-bind="click: editAction, if: isOwner(ref)">Button</a>
</div>
与以前相同,如果isOwner(ref)计算为true,请参见空锚标记。
题:
如何绑定
if: isOwner()
来管理按钮的可见性?即
如果
isOwner(ref)
评估为true
,我应该看到正确的链接/按钮如果
isOwner(ref)
评估为false
,我应该根本看不到任何链接/按钮 最佳答案
您可以使用virtual elements来实现:
<!-- ko if: isOwner(ref) -->
<a id="btnXYZ" class="" data-bind="click: editAction">Button</a>
<!-- /ko -->
另外,如果您愿意,可以显示完全不同的内容,例如:
<!-- ko ifnot: isOwner(ref) -->
whatever you want
<!-- /ko -->