gpt4 book ai didi

knockout.js - react 值改变

转载 作者:行者123 更新时间:2023-12-04 05:24:41 26 4
gpt4 key购买 nike

假设我有 name = ko.observable('John')绑定(bind)到 input作为值(value)。我需要显示(之前隐藏)<button>Save</button>如果 name换衣服。因此,如果我从 John 编辑名称至Jack然后应该会出现保存按钮,如果编辑回John它应该再次隐藏。你有什么想法可以在这里应用什么样的绑定(bind)/扩展?
十分感谢!

最佳答案

您需要的称为脏跟踪。

有一个名为 KoLite 的 ko 插件其中包含一个脏标志实现(您可以在 this article 中了解它的工作原理):

用法很简单,你只需要将你的 oberables 传入 ko.DirtyFlag (这将返回计算的 observable)方法:

var ViewModel = function() {
var self = this;
self.name = ko.observable('John');
self.dirtyFlag = new ko.DirtyFlag(self.name);
}

在您看来,您可以绑定(bind)到 isDirty您的 dirtyFlag 上的属性(property):
<input type="text" data-bind="value: name, valueUpdate: 'keyup'"/>
<div data-bind="if: dirtyFlag().isDirty">
<button>Save</button>
</div>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

Demo fiddle.

关于knockout.js - react 值改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13322221/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com