【发布时间】:2016-01-13 11:41:53
【问题描述】:
如果条件为false,if 绑定会移除 DOM 并停止执行内部 data-bind 属性。
即使条件为false,是否也可以保留DOM?我只想在条件为false 时停止执行data-bind,但由于 JQuery 绑定等原因,我不希望删除任何 DOM。
【问题讨论】:
-
那你为什么不能使用
visible呢?无论click或其他事件如何(它们不应该),您的data-bind是否使用自行执行操作的绑定处理程序? -
可见绑定不会停止执行元素内部的
data-bind属性。我从一开始就将所有网站页面都插入到 DOM 中。我将绑定应用于所有这些。有些页面包含我一开始没有的数据。可观察对象是空的。在这种情况下,不应执行data-bind。首先,当我从数据库中填写 observable 时,应该执行内部的data-bind绑定。 -
如果您使用 KO,则不应依赖存储在 DOM 中的状态。因此,您应该将所有 jquery 绑定移动到自定义 KO 绑定,在这种情况下,当
if再次评估为 true 时,您的 jquery 绑定将在评估data-bind时自动重新应用。 -
这是一个例子。我还有其他库,例如 Framework7 等。我无法控制所有这些的绑定...
标签: javascript jquery knockout.js data-binding