2014-09-16 4 views
0

typescript를 사용하여 검도 스케줄러를 확장하려고합니다. 여기TypeScript를 사용하여 Kendo의 AgendaView (스케줄러에서) 확장

는 JS를 사용하여 작업 예입니다 http://jsbin.com/ucaB/1/edit

하지만 타이프에서 작업을 얻을 수 없습니다.

내가 가까이라고 생각 :

var CustomAgenda = (<any>kendo.ui).AgendaView.extend(
{ 
    endDate:() => 
    { 
     var self = this; 
     var d = (<any>kendo.ui).AgendaView.fn.endDate.call(self); 
     return (<any>kendo).date.addDays(d, 21); 
    } 
}); 

그러나 분명 내 '이'참조가 잘못되었습니다. 검도 타이핑 파일은 kendo.date 또는 AgendaView도 공개하지 않으므로 다소 지저분 해집니다.

아마 당신이이 this 외부 endDate 기능을 캡처 할 해달라고 이 특별한 경우 ...이 확실히 추한 느낌, 그것에 대해

답변

1

내가 다른 질문에 대한 대답에 따라 함께 온 더 'typescripty'방법 :

var CustomAgenda = (<any>kendo.ui).AgendaView.extend(
{ 
    endDate: function() 
    { 
     var self = this; 
     var d = (<any>kendo.ui).AgendaView.fn.endDate.call(self); 
     return (<any>kendo).date.addDays(d, 21); 
    } 
}); 

하는이 동영상은 조금 명확 물건을 도움이 될 수 있습니다 검도 포럼. 그것은 datejs를 사용하지만, 쉽게 작동하도록 적응할 수 있습니다.

/// <reference path="../../typings/datejs/datejs.d.ts" /> 

declare module kendo.ui 
{ 
    class AgendaView implements kendo.ui.SchedulerView 
    { 
     startDate(): IDateJS; 
     endDate(): IDateJS; 
    } 
} 

class MonthlyAgendaView extends kendo.ui.AgendaView 
{ 
    endDate(): IDateJS 
    { 
     var date = this.startDate().clone(); 
     date.moveToLastDayOfMonth(); 
     return date; 
    } 
} 
관련 문제