我是knockoutjs的新手,我有以下viewmodel:
var Testing = function(){
this.Username = ko.observable("");
this.Password = ko.observable("");
this.email = ko.observable("");
}
我只需要将某些数据绑定值(用户名和密码)转换为json。当我使用data = ko.toJSON(this);
那么如何过滤某些数据绑定值并转换为json?
答案 0 :(得分:2)
您既可以序列化您想要的内容,也可以采用Ryan Neidermeyer的方法,只需删除不需要的属性 -
var items = ko.toJS(this);
var mappedItems = ko.utils.arrayMap(items, function(item) {
delete item.email;
return item;
});
答案 1 :(得分:1)
您可以向ViewModel添加toJSON
方法,并执行您需要的过滤:
ViewModel.prototype.toJSON = function() {
var copy = ko.toJS(this);
// remove any unneeded properties
delete copy.unneedProperty;
return copy;
}
有关序列化为JSON的更多信息,请查看docs。