我只是想知道如何从 knockout viewModel
中删除属性。具体来说,是计算出来的。我有一个简单的 viewModel
function viewModel(){
var self = this;
self.name = ko.observable("John");
self.lastname = ko.observable("Doe");
self.age = ko.observable("22");
self.fullName = ko.computed(function(){
return self.name() + self.lastname();
});
self.fullNameAndAge = ko.computed(function(){
return self.name() + self.lastname() + ': ' + self.age();
});
};
数据将发送到服务器,但我想从 viewModel
中排除计算出的数据。
我以为这样的东西会获取所有计算数据并将其删除,但没有找到类似的东西。
for (observableKey in viewModel) {
if (ko.isComputed(viewModel[observableKey])
{
delete viewModel[observableKey];
}
}
最佳答案
Knockout 可以返回一个常规对象,然后您可以从中删除任何您想要的内容。
var plainJs = ko.toJS(viewModel);
delete plainJs.fullName;
记录here .
关于javascript - 从 knockout View 模型中删除属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15369292/