Knockout.js 反应值已更改

Knockout.js 反应值已更改,knockout.js,kolite,Knockout.js,Kolite,假设我有name=ko.observable('John'),它作为值绑定到输入。如果nameget change,我需要显示(隐藏在前面)Save。因此,如果我将名字从John编辑到Jack,则应显示保存按钮,如果编辑回John则应再次隐藏。您知道这里可以应用什么样的绑定/扩展吗? 非常感谢 您需要的是所谓的脏跟踪 有一个名为ko的插件,其中包含一个脏标志实现(您可以了解它在中的工作方式): 用法非常简单,只需将可观测值传递到ko.DirtyFlag(这将返回计算可观测值)方法: 在您的视图中

假设我有
name=ko.observable('John')
,它作为值绑定到
输入。如果
name
get change,我需要显示(隐藏在前面)
Save
。因此,如果我将名字从
John
编辑到
Jack
,则应显示保存按钮,如果编辑回
John
则应再次隐藏。您知道这里可以应用什么样的绑定/扩展吗?

非常感谢

您需要的是所谓的脏跟踪

有一个名为ko的插件,其中包含一个脏标志实现(您可以了解它在中的工作方式):

用法非常简单,只需将可观测值传递到
ko.DirtyFlag
(这将返回计算可观测值)方法:

在您的视图中,您可以绑定到
dirtyFlag
上的
isDirty
属性:

<input type="text" data-bind="value: name, valueUpdate: 'keyup'"/>
<div data-bind="if: dirtyFlag().isDirty">
    <button>Save</button>
</div>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

拯救
​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

<input type="text" data-bind="value: name, valueUpdate: 'keyup'"/>
<div data-bind="if: dirtyFlag().isDirty">
    <button>Save</button>
</div>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​