Jestem dość nowy w NodeJS i trudno mi się skupić na asynchronicznej naturze funkcji, kiedy naprawdę chcę, aby jedno połączenie śledziło drugie w sposób zsynchronizowany.
Powiedzmy na przykład, że dzwonię do metod usług sieciowych. Każda metoda ma funkcję wywołania zwrotnego. Ale co, jeśli chcę zadzwonić do 10 z nich w określonej kolejności? Czy naprawdę muszę połączyć wszystkie funkcje w pierwszym wywołaniu zwrotnym? Co jeśli drugi raz łańcuch będzie nieco inny?
Czy są jakieś eleganckie wzory do radzenia sobie w sytuacjach, w których naprawdę chcesz, aby rzeczy były synchroniczne?
Czy powinienem naprawdę porzucić takie programowanie, aby przyzwyczaić się do innego sposobu myślenia? Jeśli to prawda, może ktoś wskaże mi czysty przykład dłuższego łańcucha funkcji za pomocą wywołań zwrotnych ...
Odpowiedzi:
Ludzie zwykle używają do tego Step lub Async . Sprawdź je, istnieje wiele fajnych samouczków na ich temat, zobaczysz, że przychodzą „do resque:”
http://dailyjs.com/2011/11/14/popular-control-flow/
http://dailyjs.com/2011/11/07/code-review/
http://howtonode.org/step-of- konduktor
Sprawdź również 2 odpowiedzi:
/programming/6954588/what-is-the-best-control-flow-module-for-node-js
/programming/5265743/node-js-what-techniques -are-there-for-writing-clean-simple-call-code-code
źródło