Daje możliwość obsługi zachowania klienta bez konieczności ponownego ładowania całej strony, tak jak w przypadku, gdy użytkownik zajmuje się routingiem po stronie serwera.
Otwiera możliwości bardziej responsywnych i interaktywnych projektów, ponieważ zamiast przeładowywać całą stronę za każdym razem, gdy zmieniasz trasę, możesz ponownie wydać tylko część strony, która zmienia się dla danej trasy. Jednocześnie pomaga zmniejszyć obciążenie serwera, ponieważ redukujesz komunikację z serwerem klienckim, przesyłając tylko dane wymagane do wyświetlenia strony klienta, która może go obsłużyć (renderowanie widoków itp.).
Dzięki użyciu metody backbone.js lub inne frameworki typu mvc (podobnego do tego), które możesz zredukować do serwera, aby udostępnić tylko interfejs API REST do pracy z danymi i odbierania ich bez konieczności radzenia sobie z renderowaniem, a ty przekazujesz niektóre - lub nawet najczęściej - logikę do klient.
Większość dzisiejszych aplikacji internetowych korzysta z routingu po stronie klienta - od Gmaila do Twittera.
Czy mówisz o routingu liniowym na schemacie? –
nie, bardziej na wzór funkcjonalności, jaką daje pakiet taki jak Crossroads.js. – skeej
Javascript ewoluuje obecnie bardzo często, istnieje wiele trendów, które sprawiają, że jest on bardziej komfortowy na dużą skalę, ponieważ tak nie jest. Będą solidne wzorce i najlepsze praktyki, ale rzeczy takie jak crossroads.js są pionierami na nowych terenach. Pomysłowi pionierzy. – SoonDead