オブザーバブルのオブザーバブル配列があります-各オブザーバブルはrequire用に拡張されていますが、クリアされたフィールドでフォームを保存すると、エラーが収集されないか、表示するエラーがあります-
ko.validation.configure({
grouping: {
deep: true,
observable: true
}
});
var viewModel = function () {
var self = this;
var data = {
"deadzone": "0.2",
"sloperange": "2",
"stepsize": "0.8",
"setpoint": "0.75",
"pressure": "1"
};
self.defaultCalculations = ko.observableArray([]);
self.defaultCalculationProperties = function (defaults) {
var self = this;
var properties = defaults;
self.deadzone = ko.observable(properties.deadzone || '').extend({
required: {
message: '*required'
}
});
self.sloperange = ko.observable(properties.sloperange || '').extend({
required: {
message: '*required'
}
});
self.stepsize = ko.observable(properties.stepsize || '').extend({
required: {
message: '*required'
}
});
self.setpoint = ko.observable(properties.setpoint || '').extend({
required: {
message: '*required'
}
});
self.pressure = ko.observable(properties.pressure || '').extend({
required: {
message: '*required'
}
});
};
//populate calculation values
self.populateCalculationDefaults = function (data) {
//pushing data to an array and mapping each item
var temp = [];
temp[0] = data;
var mappedTasks = _.map(temp, function (item) {
return new self.defaultCalculationProperties(item);
});
self.defaultCalculations(mappedTasks);
};
self.save = function (model) {
//console.log(model);
console.log(self.errors().length, self.errors.showAllMessages());
if (self.errors().length != 0) {
self.errors.showAllMessages();
}
};
self.errors = ko.validation.group(self.defaultCalculations());
self.populateCalculationDefaults(data);
};
ko.applyBindings(new viewModel());
問題が何であるかわからず、スタックフローを精査しました-何か提案はありますか?