У меня проблема с пользовательским интерфейсом Kendo с использованием TypScript в моем проекте. У меня есть сетка, режим фильтрации которой не работает для некоторых типов столбцов, например integer. Я попытался добавить тип в столбцы напрямую, но он вообще не работает. И это не фильтрует ссылки.Typcript Ошибка типа столбика пользовательского интерфейса Kendo
[EDIT] Вот мой код функции, которые создают сетку:
private _createInfoGridOptions(): kendo.ui.GridOptions {
return {
dataSource: {
serverPaging: true,
serverSorting: true,
pageSize: 15,
},
resizable: true,
selectable: 'row',
filterable: true,
columnMenu: true,
sortable: true,
scrollable: {
virtual: true
},
groupable: true,
height: 450,
columns: [
{ field: 'subTaskId', type: "number", title: 'Subtask Id', width: '80px' },
{ field: 'reportDate', type:"date", title: 'Report Date', width: '100px', template: '#= moment.utc(reportDate).local().format("yyyy/mm/dd") #' },
{ field: 'prog', type: "string", title: 'prog', width: '60px', template: "<a href='\\#' ng-click=\"openpopup(#=prog#, \'#=reportDate#\'\')\">#=prog#</a>" },
{ field: 'state', type:"string", title: 'status', width: '130px' },
{ field: 'maxTemps', type: 'number', title: 'Max Temps', width: '100px' }
]
};
}
Я имею эту ошибку на Chrome:
Uncaught TypeError: (d.prog || "").toLowerCase is not a function
и этот на Firefox:
TypeError: "".toLowerCase is not a function.
Я сделал plunker, чтобы проверить свой код, переведенный в javascript, но свойство type работает.
$("#grid").kendoGrid({
dataSource:
{
data : [
{id: 36308,reportDate:"2015-02-01",prog: 58,state: "Waiting",maxTemps: 0},
{id: 36309,reportDate:"2015-02-01",prog: 34,state: "Complete",maxTemps: 86400},
{id: 36310,reportDate:"2015-02-01",prog: 116,state: "Complete",maxTemps: 86400},
{id: 36311,reportDate:"2015-02-02",prog: 58,state: "Complete",maxTemps: 86400}
],
serverPaging: true,
serverSorting: true,
pageSize: 15
},
filterable: true,
columnMenu: true,
columns: [
{ field: 'id', type:'number', title: 'Id', width: '80px' },
{ field: 'reportDate', title: 'Report Date', width: '100px' },
{ field: 'prog', type:'number', title: 'Prog', width: '60px' },
{ field: 'state', title: 'Status', width: '130px' },
{ field: 'maxTemps', type:'number', title: 'Max Temps', width: '100px' }
]
});
Так он работает в JavaScript, но не в машинописном, я использую AngularJS с Кендо UI. Любые идеи, почему это не вокинг?
Спасибо!
Ginwu
ли вы добавить определения? – indapublic
Определения? Если вы говорите о скрипте DefinetelyTyped, да, я добавил их в свой проект. – Ginwu
Откуда берутся сгенерированные данные внутри источника данных? вы не указали какой-либо 'read' URL – mshaaban