位置:首頁 > Web開發 > BackboneJS教學 > BackboneJS router.navigate()方法

BackboneJS router.navigate()方法

保存應用程序的URL,需要使用導航方法來更新URL。

語法

router.navigate(fragment, options)

參數:

  • fragment: url將此參數之後顯示的參數的名稱。
  • options: 觸發位置,選項替換調用路由功能和更新的URL。

示例

<!DOCTYPE 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 ) {

               //Uses the navigate() method save the application as URL
               router.navigate('/');
            }
        });
        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>
     //It refers to the view class 'RouteMenu' and creates the 3 links which changes the url when you click on the links
     <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>

輸出

讓我們進行以下步驟來看看上麵的代碼工作:

  • 保存上述代碼到文件navigate.html

  • 在瀏覽器打開這個HTML文件。