2012-05-31 4 views
3

를 추가하지 I가 다음의 ViewState 정의 :Ember.js의 ViewState보기

App.LoggedIn = Ember.ViewState.create({ 
    view: App.TopbarView.extend({ 
    elementId: 'topbar' 
    }), 

내가 topbar ID를 가진 요소에 추가이보기를 원하는 내가 지정할 수 있습니다 어쨌든 있나요?

내가 찾을 수있는 유일한 것은 입력 처리기에서보기 작성을 설정하는 것입니다.

답변

-1

'보기'속성의보기가 아닌 클래스보기를 전달해야합니다. 시도해보십시오

App.LoggedIn = Ember.ViewState.create({ 
    view: App.TopbarView.create({ 
    elementId: 'topbar' 
}) 
+1

올바르지 않습니다.'view'가 클래스 인 경우 인스턴스가 생성됩니다. https://github.com/emberjs/ember.js/blob/5982731a69f6c5a853ac50269e1210616483c6e8/packages/ember-viewstates/lib/을 참조하십시오. view_state.js # L254-257. 또한 질문은 주어진 요소에보기를 추가하는 방법입니다. – pangratz

0

아마도 StateManager에서 해당 ViewState를 사용하게 될 것입니다. 맞습니까?

그렇다면 stateManager의 rootElement를 topbar로 설정하고이 상태가 입력되면이보기가 해당 요소에 추가됩니다. 예를 들어

: 당신은 그 길을 갈 수없는 경우

App.loggedIn = Ember.ViewState.create({ 
    view: App.TopbarView 
}); 

App.stateManager = Ember.StateManager.create({ 
    rootElement: 'topbar', 
    loggedIn: App.loggedIn 
}); 

, 당신은 topbar 요소를 발견하고 그것을보기를 추가 할 뷰 상태의 입력 기능을 수정할 수 있습니다. 이해가 되니?

관련 문제