AJAX 経由でサーバーから受信している JSON モデルのリストがあります。
モデルを JavaScript の関数として再定義する必要もありません。
以下を行う必要がないようにするにはどうすればよいですか?ただし、すべてのモデル プロパティを監視できるようにしたいと考えています。
function Car(car) {
this.Name = ko.observable(car.Name);
this.Type = ko.observable(car.Type);
this.Rating = ko.observable(car.Rating);
this.Color = ko.observable(car.Color);
}
var ViewModel = function () {
var self = this;
self.cars = ko.observableArray([]);
$.post('/car/getall', function (cars) {
var carsKO= [];
$.each(cars, function (i, elm) {
carsKO.push(new Car(elm));
});
self.cars(carsKO);
});
};
ko.applyBindings(new ViewModel());
Knockout Mapping プラグインについて話題になっています。しかし、それが以下とどのように違うのかわかりませんか? この時点では、モデルのプロパティを観察できません。
var ViewModel = function () {
var self = this;
self.cars = ko.observableArray([]);
$.post('/car/getall', function (cars) {
self.cars(cars);
});
};
ko.applyBindings(new ViewModel());