Manchmal müssen wir notifySubscribers verwenden, um die Ausführung von subscirbers eines Observablen zu erzwingen, Sie können einen Parameter an notifySubscribers übergeben, aber das Problem ist, dass der übergebene Parameter weder den Wert des beobachtbaren ändert noch an den subsriber weitergegeben wird Warum wird es benutzt? Ich sah in einigen Knockout doc, ein Parameter ist beispielsweise in this one übergeben. Hier ist eine jsfiddle code snippet, die die Tatsache bestätigt, dass der Parameter nirgends verwendet wird. Fehle ich etwas oder ist der Param tatsächlich bedeutungslos?Knockout, warum brauchen wir den Parameter für notifySubscribers?
-Code in jsfiddle html
<div data-bind="text: $data.content"></div>
Javascript
var viewModel = {
content: ko.observable('original')
};
var cpted = ko.computed(function(){
alert(viewModel.content());
return viewModel.content();
});
ko.applyBindings(viewModel);
viewModel.content.notifySubscribers('new value');
alert(viewModel.content());
Ich bin sehr neugierig, warum Sie "die Ausführung von Abonnenten erzwingen wollen", wenn sich der Wert nicht geändert hat. Was machen sie, wenn sich der Wert nicht geändert hat? – Tyrsius
Es gibt ein Beispiel in diesem Dokument http://knockoutjs.com/documentation/extenders.html, suchen Sie einfach nach notifySubscribers @ Tyrsius –