Как сделать так, чтобы рабочие часы отображались в выходные дни?

Я использую подключаемый модуль планировщика премиум-класса, и мои ресурсы создаются с рабочим временем, настроенным со следующей реализацией: https://fullcalendar.io/docs/businessHours-per-resource

Это отлично работает, и я показываю только один день за раз, поэтому я не включил атрибут daysOfWeek в объект.

Моя проблема в том, что когда я нахожусь в субботу или воскресенье, рабочие часы не отображаются. Весь день выделен серым цветом, как будто ресурс недоступен в этот день, что в моем случае неверно.

Есть ли какой-то атрибут, которого мне не хватает в модели календаря? Что-то вроде showBusinessHoursOnWeekends: true?


person Liam Bull    schedule 25.05.2020    source источник


Ответы (1)


Вы упомянули, что не включили параметр daysOfWeek для рабочих часов. Вы сказали, что сделали это, потому что «я показываю только один день за раз». Однако это не имеет смысла. Параметр daysOfWeek указывает, к каким дням недели относятся рабочие часы. Это не имеет никакого отношения к тому, сколько дней одновременно отображается представление вашего календаря. FullCalendar по-прежнему необходимо знать, для каких календарных дней показывать рабочие часы, а для каких нет, чтобы, когда пользователь переходит на следующий день, он знал, что показывать.

Если вы не включаете daysOfWeek, fullCalendar по умолчанию предполагает понедельник-пятницу. (Это не задокументировано, но поведение можно наблюдать, просто удалив параметр из любого существующего определения рабочих часов.).

Если мы настроим простую демонстрацию, используя рабочие часы, где одни и те же часы применяются 7 дней в неделю, мы увидим, что во всех представлениях рабочие часы отображаются правильно все дни. Демонстрация: https://codepen.io/ADyson82/pen/OJyGGeJ.

Добавление этой одной строки кода — это все, что вам нужно сделать, чтобы решить вашу проблему:

  daysOfWeek: [ 0, 1, 2, 3, 4, 5, 6 ],
person ADyson    schedule 26.05.2020