【问题标题】:Previous value of observable variable可观察变量的先前值
【发布时间】:2013-08-29 17:46:56
【问题描述】:

我有如下输入文本:

<input type="text" style="width: 80%" data-bind="value: Note, event: { blur: $root.UpdateNote}" />

它包含可观察变量 Note 的值。并模糊它更新说明。 我的问题是在更新之前检查 note 的先前值和 note 的当前值。

这是包含所有变量的构造函数

function Goal(data) {
var self = this;

self.GoalID = data.GoalID;
self.Note = ko.observable(data.Note);

}

在我的视图模型中,我已将 note 声明为可观察变量,如下所示:

self.Note = ko.observable();

在knockoutjs中,如何获取可观察变量的先前值??

【问题讨论】:

    标签: knockout.js


    【解决方案1】:

    您可以订阅Note 可观察更改并指定“beforeChange”参数以获取旧值:

    function Goal(data) {
        var self = this;
    
        self.GoalID = data.GoalID;
        self.Note = ko.observable(data.Note);
    
        self.Note.subscribe(function(oldValue) {
            console.log(oldValue);
        }, self, "beforeChange");
    
    }
    

    这里是一个例子:http://jsfiddle.net/vyshniakov/HACbc/

    【讨论】:

    • 感谢您的解决方案。但我的问题是 note 是我的构造函数的属性之一。我已经编辑了问题。
    • 还有什么问题?您可以在构造函数中订阅 Note 属性。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-30
    • 1970-01-01
    • 2016-02-07
    • 1970-01-01
    相关资源
    最近更新 更多