2013-02-16 6 views
0

내 백본 기능에서 라우터에 ID를 탐색하지만 기능이 호출되지 않습니다 ... 다른 샘플이 내 링크에 대한 탐색 URL을 제공 했으므로 함수를 호출하지 않습니다.라우터 기능이 트리거되지 않음

mycode :

(function($){ 

     var myRouter = Backbone.Router.extend({ 
      routes:{ 
       "":"defaultRoute", //onload it works 
       '#/name/:id':"nameData", 
          // i am calling this function on default Router 
       '#/project/:id':"projectData" 
      }, 
      defaultRoute:function(){ 
       console.log('default') 
       startRoute.navigate("#/name/3"); // i am redirecting 
      }, 
      nameData:function(id){ 
       console.log(id); // id not consoling not called this func. 
      }, 
      projectData:function(project){ 
       console.log(project); 
      } 
     }); 


    var startRoute = new myRouter(); 
    Backbone.history.start(); 
    })(jQuery); 

내 URL : http://localhost:85/router/web/#/name/3

내 HTML :

<ul class="name"> 
       <li><a href="#/name/1">name1</a></li> 
       <li><a href="#/name/2">name2</a></li> 
       <li><a href="#/name/3">name3</a></li> 
       <li><a href="#/name/4">name4</a></li> 
       <li><a href="#/name/5">name5</a></li> 
      </ul> 

아무도 내가 여기있는 일을 잘못 생각합니다. 제발

+0

당신이 [문서]를 보면나요 (http://backbonejs.org/#Router)? 경로가 올바르게 보이지 않습니다. –

+0

내가 잘못 이해할 수 있습니다. – 3gwebtrain

답변

0

내 모든 기능은 mistrake에 의해 정확합니다. prams 경로에 해시를 추가했습니다. 여기

업데이트 기능 :

(function($){ 

    var myRouter = Backbone.Router.extend({ 
     routes:{ 
      "":"defaultRoute", 
      'name/:id':"nameData", 
      'product/:id':"projectData" 
     }, 
     defaultRoute:function(){ 
      console.log('i am default'); 
     }, 
     nameData:function(e,id){ 
      console.log(id); 
     }, 
     projectData:function(project){ 
      console.log(project); 
     } 
    }); 

var startRoute = new myRouter(); 
Backbone.history.start(); 
})(jQuery);