2017-01-16 2 views
0

검도 트 리뷰 컨트롤 (mvvm 버전)을 사용하고 있습니다. 항목은 뷰 모델의 기능을 사용하는 템플릿에 바인딩됩니다. 검도 트 리뷰 뷰 템플릿 : d.MyFunction이 함수가 아닙니다.

<div id="myTreeView" 
     data-role="treeview" 
     data-bind="source: MySource" 
     data-template="treeview-template"> 
</div> 

<script id="treeview-template" type="text/x-kendo-template"> 
    <span data-bind="events: { click: MyClickEvent }, css: { active: MyCssFunction(#=item.Id#) }">#: item.Name #</span> 
</script> 

viewModel.MyCssFunction = function(e) {...}; 
viewModel.MyClickEvent= function(e) {...}; 

click 이벤트

이 실행되지만, CSS 기능이 결합 모델 중 오류가 발생합니다 : catch되지 않은 유형 오류 : d.MyCssFunction는 함수가 아닙니다. 간단한 모델 속성 (예 : 부울)으로 함수를 바꾸면 모든 것이 작동합니다. 누군가 도울 수 있습니까?

답변

0

이 할 수없는 것,하지만 당신은 조건식에서 함수를 참조 할 수 있습니다 (의 ViewModel는 여기에 추가되어야합니다) :

# if(viewModel.MyCssFunction(item.Id)) { # 
    <span class="active" data-bind="events: { click: MyClickEvent }">#: item.Name #</span> 
# } else { # 
    <span data-bind="events: { click: MyClickEvent }">#: item.Name #</span> 
# } #