2011-12-06 2 views
1

를 사용하여 메뉴를 정렬. 이것은 작동 중입니다. 모델, 컬렉션 및 뷰가 있습니다.렌더링 내가 항목의 목록을 렌더링 할 Backbone.js을 사용하고 Backbone.js

는 내가 뭘 원하는 목록 항목에 대한 정렬 옵션을 제공하는 홈페이지 탐색 & 하위 탐색을 가지고있다. 열심히 페이지에 코딩하는 것이 그래서

메인 탐색은 두 항목이다. 하위 탐색의 경우 Main Nav 선택에 따라 동적으로 렌더링하고 싶습니다. 하위 탐색 항목은 정적입니다.

events : { 
    "click #items-main-nav" : "onNavMainClick" 
}, 

내 질문은, 어디 두 가지 주요 탐색 항목에 대한 subnav 항목을 정의 수행하십시오 MainNav 항목이 변경 될 때

내가 관찰하는 이벤트를 설정? 그리고 그것들을 렌더링하는 방법. 그리고이 모든 것이 backbone.js 뷰 파일에 어디에 있어야합니까?

감사

답변

2

당신은 당신이 MainNav에서 선택한 항목에 따라 템플릿을 삽입 할 subNav 컨테이너 내부의 subNav 컨테이너를 렌더링 하나 개의보기를해야합니다. 나는 아래처럼 보일 것이라고 생각합니다 ....

var subNav = Backbone.View.extend({ 

    tagName: "div", 

    events: { 
    "click #items-main-nav" : "onNavMainClick" 
    }, 

    onNavMainClick : function(event){ 
    //determine which item they clicked on the main nav 
    //and call render with correct paramters 
    render(option); 
    }, 

    render: function(option) { 

    $(this.el).html(option.template(this.model.toJSON())); 
    return this; 
    } 

}); 
+0

모델을 어떻게 정의합니까? 정적 일 것이고 각 항목에 대해 제목과 발자가 포함됩니까? 그것을 정의하고 콧수염 주머니에 전달하는 방법은 무엇입니까? 감사합니다 – AnApprentice

+0

목록의 각 항목에 대해 하나씩 두 개의 모델을 가질 수 있으며 다른 템플리트를 렌더링하는 대신 동일한 템플리트를 다른 모델로 렌더링합니다. –

관련 문제