BackboneJS - Percorso del router

Descrizione

Fornisce un percorso per il router e aggiunge il parametro del router utilizzando un file slash seguito da colons e il nome del parametro.

Sintassi

router.route(route, name, [callback])

Parametri

  • route - Può essere una stringa di instradamento o un'espressione regolare.

  • name - È il nome di un parametro del router.

  • callback - È il nome del router, se l'argomento callback viene omesso.

Esempio

<!DOCTYPE html>
<html>
   <head>
      <title>Router Example</title>
      <script src = "https://code.jquery.com/jquery-2.1.3.min.js"
         type = "text/javascript"></script>
      
      <script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js"
         type = "text/javascript"></script>
      
      <script src = "https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.2/backbone-min.js"
         type = "text/javascript"></script>
   </head>
   
   <script type = "text/javascript">
      //'RouteMenu' is a name of the view class
      var RouteMenu = Backbone.View.extend ({
         el: '#routemenu',   //'el' defines which element to be used as the view reference

         //defines a click event to be occur on link
         events: {
            'click a' : 'onClick'
         },

         //After clicking on a link, router calls 'navigate' to update URL
         onClick: function( e ) {
            router.navigate('/');
         }
      });

      //'Router' is a name of the router class
      var Router = Backbone.Router.extend ({

         //The 'routes' maps URLs with parameters to functions on your router
            routes: {
               'route/:id' : 'defaultRoute'
            },
      });

      //'routemenu' is an instance of the view class
      var routemenu = new RouteMenu();
   
      //It start listening to the routes and manages the history for bookmarkable URL's
      Backbone.history.start();
   </script>
   
   <body>
      <section id = "routemenu">
         <ul>
            <li> <a href = "#/route/1">route 1 </a> </li>
            <li> <a href = "#/route/2">route 2 </a> </li>
            <li> <a href = "#/route/3">route 3 </a> </li>
         </ul>
      </section>
   </body>
   
</html>

Produzione

Eseguiamo i seguenti passaggi per vedere come funziona il codice sopra:

  • Salva il codice sopra nel file route.htm file.

  • Apri questo file HTML in un browser.

NOTE- La funzionalità di cui sopra è correlata alla barra degli indirizzi. Quindi, quando apri il codice sopra nel browser, mostrerà il risultato come segue.

Clicca qui per la demo