2012-01-01 2 views
0

속성 바인딩을 기반으로 핸들 막대보기를 사용하여 특정 버튼에 클래스를 표시하려고합니다. 나는 ember.js가 자신의 사이트 (http://emberjs.com/examples/todos/)에있는 Todo 앱과 같은 것을하고 있으며, "Clear Completed"버튼을 사라지게하려고 노력하고있다. 속성의 값.classNameBindings 버튼을 사용하여 작업하기 ember.js가있는 핸들 막대에서 #view

나는 여기 (http://jsfiddle.net/boushley/XEdNg/)에서 무엇을 할 것인지를 보여주는 jsfiddle을 가지고있다. #view 태그 안에 className을 추가하면 정상적으로 표시됩니다. 하지만 clasNameBindings를 추가하면 예상대로 작동하지 않습니다. 내가 잘못했거나 여기 무언가가 고장 났는가?

아론은

+0

이 질문은 이전 1.0 버전의 EmberJS에서 사용되지 않는 코드를 참조합니다. – Kingpin2k

답변

0

나는 여기 이것을 https://github.com/emberjs/ember.js/issues/322과 이것에 대해 도움을 주었고, 프로젝트 수행자 중 한 사람이 이것을 어떻게 도와 주 었는지 명확히 알려준다. https://github.com/emberjs/ember.js/issues/322#issuecomment-3332477 (http://jsfiddle.net/aNZSD/) 본질적으로 나는 ButtonView를 확장하고이 새 뷰에 원하는 속성을 배치하는보기. 이것이 작동해야하는 방식이며, 나는 이것을 올바르게 보지 못했습니다.

이렇게하면 다른 사람에게 더 명확 해지기를 바랍니다.

0

내가 너무 classNameBindings와 비슷한 문제가 있었다 기억한다.

대신 다음을 시도하십시오. http://guides.sproutcore20.com/using_handlebars.html#binding-class-names-with-bindattr.

// Javascript for the view 
App.AlertView = SC.View.extend({ 
    priority: "p4", 
    isUrgent: true 
}); 

// Template 
<div {{bindAttr class="priority"}}> 
    Warning! 
</div> 

// Emits the following HTML 
<div class="p4"> 
    Warning! 
</div> 

그냥 버튼을 표시/숨기려면

는 다음 isVisible 속성을 결합 해보십시오.

isVisibleBinding: 'App.pageController.myProperty' 

희망이 있습니다.