Następujący kręgosłup collection.fetch uruchamia kod, z jakiegoś powodu błędy, a następnie przeskakuje do obsługi błędu (zgodnie z oczekiwaniami), ale tak naprawdę nie wiem, jakie są parametry obsługi błędu. Parametry model, xhr i opcje są niezdefiniowane, gdy wystąpi błąd. Co ja robię źle?backbonejs kolekcja.fetch handler błędu
var onErrorHandler = function(model, xhr, options) {
alert(options);
};
that.collection = new MembersCollection([]);
that.collection.fetch({ success : onDataHandler, error: onErrorHandler, dataType: "jsonp" });
@muistooshort: Całkowicie zapomniałem o argumentach js, dzięki za tę wskazówkę.
Oto co znalazłem ...
Arguments[0] = looks like its just the letter "d"
Arguments[1] = is an object. Has readyState, responseText, status, statusText
Arguments[2] = is an object. Exactly the same as [1]
status = 200, a tekst jest "OK". Parametr responseText jest dokładnie danymi JSON, które spodziewałem się otrzymać z modelu serwera PHP.
Więc teraz domyślam się, dlaczego ta metoda collection.fetch wysyła wynik sukcesu do obsługi błędu? Nie wierzę, że kolejność tych procedur w wezwaniach do pobrania ma znaczenie. Czy to?
Czy jesteś pewien, że wszystkie są "niezdefiniowane"? Zawsze możesz 'console.log (argumenty)' zobaczyć, co dokładnie jest przekazywane. –
brakuje niektórych wymaganych opcji ajax dla żądania jsonp. http://stackoverflow.com/questions/7202603/jquery-ajax-jsonp –
@muistooshort: Całkowicie zapomniałem o argumentach js, dzięki za tę wskazówkę. Oto, co znalazłem ... – Locohost