Knockout(KO)绑定会立即更新视图模型。这对于编辑对话框来说并不是那么好;我想在“确定”和“取消”按钮上设置提交和回滚行为。
我可以想到几种方法来解决这个问题,但我是第一个面对这个特殊问题的人,所以传统的解决方案是什么?
你不能这样做
$.extend(buffer, this);
app.showDialog(buffer).then(function () {
//if ok clicked then $.extend(this, buffer);
});
因为复制的可观察字段引用了相同的可观察实例,所以它是一个浅表副本。您必须按成员转换为文字成员。