将knockout viewmodel重置回原始数据的最佳方法是什么?
如果原始数据json没有改变,在我对observable进行一些更改之后,我该如何设置它?就像刷新页面一样.
最佳答案 我认为“刷新”你的viewModel是不好的做法.你可以像这样刷新它:
ko.cleanNode(document.getElementById("element-id"));
ko.applyBindings(yourViewModel, document.getElementById("element-id"));
但是我觉得在你的视图模型上有一个名为“reset”的方法更清晰,它会将你的observable设置回初始状态.也许是这样的:
function MyViewModel() {
this.something = ko.observable("default value");
this.somethingElse = ko.observable(0):
this.reset = function() {
this.something("default value");
this.somethingElse(0);
}
}