9 Stimmen

Beobachtung der Eigenschaften eines Arrays, das in KnockoutJS beobachtet wird

Ich arbeite an einer ASP.Net MVC-Anwendung. Meine Aktion gibt eine Ansicht mit einem Modell zurück, das ein Array von Objekten ist (eine Klasse mit Eigenschaften wie Name, ID, IsViewable).

var model = @Model.ToJson(); // done via extension call

Ich möchte dieses Array beobachten, damit ich bei jeder Änderung eine Tabelle aktualisieren kann, die an eine Vorlage gebunden ist.

var viewModel = {
    accounts = ko.observableArray(model)
}

Für das Hinzufügen und Löschen von Elementen aus dem Array funktioniert das sehr gut. Allerdings möchte ich auch die Vorlage zu aktualisieren, wenn eine Eigenschaft in einem der Konten ändert (dh, Name oder ID).

Auf der KnockoutJS-Website heißt es dazu: Natürlich können Sie diese Eigenschaften beobachtbar machen, wenn Sie es wünschen, aber das ist eine unabhängige Entscheidung. . Das ist es, was ich nicht herausfinden kann, wie man es macht.

Ich habe etwas Ähnliches versucht, ohne Erfolg:

var viewModel = {
    accounts = ko.oservableArray([])
}

for(var i = 0; i < model.length; i++) {
    ko.observableArray(model[i]);
    viewModel.accounts.push(model[i]);
}

Ich kann die Vorlage und die Tabelle posten, wenn sie benötigt wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X