Я использую полный календарь для отображения назначенных смен с начальным и конечным временем в полном календаре. Я буду получать данные в массиве и отображать значения в событиях. Если я делаю это только на дату, все работает правильно. Если я включаю в него время, оно не отображает события. Может ли кто-нибудь мне помочь с этим. Заранее спасибо
let apiData = [["11/07/2018","10:00",,"16:00","morningShift"],["11/08/2018","10:00",,"16:00","Shift1"]] // dynamic
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var form = '';
var today = new Date($.now());
$('#calendar').fullCalendar({
slotDuration: '00:15:00', /* If we want to split day time each 15minutes */
minTime: '00:00:00', /* calendar start Timing */
maxTime: '24:00:00', /* calendar end Timing */
defaultView: 'month',
handleWindowResize: true,
height: $(window).height() - 200,
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
events : apiData.map(([startDate,start,end,title])=>({
start: new Date(startDate)+'T'+start, //mapping date
// with time
end: new Date(startDate)+'T'+end,
title,
className: 'bg-primary'})
),
timeFormat: 'H(:mm)'
});
}
Например, вы можете получить что-то вроде Fri Nov 09 2018 09:27:32 GMT+0000 (Greenwich Mean Time)T16:00. Полная чушь. Я не уверен, как вы ожидали, что это сработает? И это легко проверить.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Я объединил дату и время начала из серверной части и передал их js.Теперь все работает нормально.
new Date(startDate)+'T'+start- это не то, как вы объявляете дату в JavaScript, а затем добавляете к ней время. Вы смешиваете объект со строкой. Запустите это в своей консоли и сами посмотрите, какой мусор он выводит. P.S. fullCalendar упрощает обработку дат, напрямую поддерживая строки или позволяя использовать объекты momentJS, с которыми намного проще работать, чем с собственными датами JS.