Show All or Limit Event Labels
Labels on the event calendar go hand in hand with the height of the event calendar rows (representing weeks). It is possible to render as many labels as fit and keep the row heights equal. The row height is liquid and determined by the height of the calendar.
If you would like to render all labels, then passing labels: 'all' will do just that. This can make the row heights variable.
Alternatively a maximum number of labels can be set by passing a number to the labels property of the view.calendar option.
If there are more events than the number of labels for a particular day, an "x more" label will help users list out all events for the day.
By default the width of the labels fill the day cells (eventDisplay: 'fill') but alternatively eventDisplay: 'exact' can be used to display the labels with exact times.
Demo
<script setup>
const myView = {
calendar: {
labels: 'all' ,
type: 'month ',
eventDisplay: 'fill '
}
}
</script>
<template>
<MbscEventcalendar :view="myView" />
</template>

<script setup>
import {
getJson,
MbscEventcalendar,
MbscPage,
setOptions
} from '@mobiscroll/vue'
import { onMounted, ref } from 'vue'
setOptions({
locale: ,
theme: ' ',
themeVariant: ' '
})
const myEvents = ref([])
const allLabelsView = { calendar: { type: 'month', labels: 'all' } }
const nrLabelsView = { calendar: { type: 'month', labels: 3 } }
const fitLabelsView = { calendar: { labels: true } }
const allLabelsWeekView = { calendar: { type: 'week', labels: 'all' } }
const nrLabelsWeekView = { calendar: { type: 'week', labels: 3 } }
const fitLabelsWeekView = { calendar: { type: 'week', labels: true } }
onMounted(() => {
getJson(
'https://trial.mobiscroll.com/events/?vers=5',
(events) => {
myEvents.value = events
},
'jsonp'
)
})
</script>
<template>
<MbscPage>
<div class="mbsc-grid">
<div class="mbsc-row">
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">All labels</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="allLabelsView" />
</div>
</div>
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">Up to 3 labels</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="nrLabelsView" />
</div>
</div>
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">Labels fitting the row</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="fitLabelsView" />
</div>
</div>
</div>
<div class="mbsc-row">
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">All labels</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="allLabelsWeekView" />
</div>
</div>
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">Up to 3 labels</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="nrLabelsWeekView" />
</div>
</div>
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">Labels fitting the row</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="fitLabelsWeekView" />
</div>
</div>
</div>
</div>
</MbscPage>
</template>
<script setup lang="ts">
import {
getJson,
MbscEventcalendar,
MbscPage,
setOptions
} from '@mobiscroll/vue'
import type { MbscCalendarEvent, MbscEventcalendarView } from '@mobiscroll/vue'
import { onMounted, ref } from 'vue'
setOptions({
locale: ,
theme: ' ',
themeVariant: ' '
})
const myEvents = ref<MbscCalendarEvent[]>([])
const allLabelsView: MbscEventcalendarView = { calendar: { type: 'month', labels: 'all' } }
const nrLabelsView: MbscEventcalendarView = { calendar: { type: 'month', labels: 3 } }
const fitLabelsView: MbscEventcalendarView = { calendar: { labels: true } }
const allLabelsWeekView: MbscEventcalendarView = { calendar: { type: 'week', labels: 'all' } }
const nrLabelsWeekView: MbscEventcalendarView = { calendar: { type: 'week', labels: 3 } }
const fitLabelsWeekView: MbscEventcalendarView = { calendar: { type: 'week', labels: true } }
onMounted(() => {
getJson(
'https://trial.mobiscroll.com/events/?vers=5',
(events: MbscCalendarEvent[]) => {
myEvents.value = events
},
'jsonp'
)
})
</script>
<template>
<MbscPage>
<div class="mbsc-grid">
<div class="mbsc-row">
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">All labels</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="allLabelsView" />
</div>
</div>
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">Up to 3 labels</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="nrLabelsView" />
</div>
</div>
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">Labels fitting the row</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="fitLabelsView" />
</div>
</div>
</div>
<div class="mbsc-row">
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">All labels</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="allLabelsWeekView" />
</div>
</div>
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">Up to 3 labels</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="nrLabelsWeekView" />
</div>
</div>
<div class="mbsc-col-sm-12 mbsc-col-md-4">
<div class="mbsc-form-group">
<div class="mbsc-form-group-title">Labels fitting the row</div>
<MbscEventcalendar :clickToCreate="" :dragToCreate="" :dragToMove="" :dragToResize="" :eventDelete="" :data="myEvents" :view="fitLabelsWeekView" />
</div>
</div>
</div>
</div>
</MbscPage>
</template>