Betrachten Sie das folgende Beispiel:Kann ich eine Liste der Elemente erhalten, die derzeit durch Knockout gebunden sind?
ko.applyBindings(viewModel, document.getElementById('id'));
Gibt es eine Liste über mit einiger Art und Weise Knockout bekommen von „Bindungen angewandt?“ Ich frage, weil ich eine Situation, wo ich die gefürchtete bin immer:
Uncaught Error: You cannot apply bindings multiple times to the same element.
Nun ist es ziemlich offensichtlich, was der Fehler bedeutet. Wie auch immer wir arbeiten, laden wir eine Ansicht über Ajax auf die Seite und verwenden die $(id).html(data)
, um die Seite mit der besagten Ansicht zu füllen, und nach der Verwendung benötigen wir js, um die Ansicht zu laden und dann die Bindungen anzuwenden.
Jetzt funktioniert das, bis wir zu einem anderen Widget navigieren, das, je nachdem, wie wir Dinge tun, die aktuelle Ansicht ersetzen und das Modell (Bindung) auf der Seite anzeigen soll. Hier bekomme ich den Fehler.
Gibt es also eine Möglichkeit, eine aktuelle Liste von "angewandten Bindungen" in Knockout zu sehen, wenn versucht wird, ein Ansichtsmodell an ein Element zu binden?