Czy jest możliwe, aby w nokaucie uzyskać bieżącą wartość obserwowalnego w ramach subskrypcji tego obserwowalnego, zanim otrzyma on nową wartość?Uzyskaj poprzednią wartość obserwowalnego w subskrybcji tego samego możliwego do zaobserwowania
Przykład:
this.myObservable = ko.observable();
this.myObservable.subscribe(function(newValue){
//I'd like to get the previous value of 'myObservable' here before it's set to newValue
});
To nie działa, niestety, ponieważ przed wywołaniem wywołania zwrotnego, wartość już się zmieniła, więc 'peek()' da ci nową wartość. –
@MichaelTeper Wiem, że wysłałem swoją odpowiedź rok temu, ale po tym, jak dostałem kilka negatywnych opinii, właśnie to przetestowałem i to działa. Zobacz: http://jsfiddle.net/4MUWp/ – rjmunro
Ok Widzę, co tam zrobiłeś ... Pytanie dotyczyło odzyskania wartości w wywołaniu zwrotnym 'subscribe', którego nie można zrobić za pomocą peek(). Twój przykład niczego nie dowodzi i może zmylić nowicjusza. Zasadniczo zawijacie tutaj prywatną zmienną i wyświetlacie jej wartość przed jej ustawieniem - więc oczywiście to się nie zmieni. –