如何使用 BootstrapVue 将弹出窗口添加到 Vue 资源时间线中的 fullcalendar 事件?

Dar*_*ren 1 javascript fullcalendar vue.js bootstrap-vue fullcalendar-5

我正在尝试向资源时间线中的事件添加弹出窗口,我想知道正确的方法是什么。

我在 Vue ^2.6.11 中使用 fullcalendar/vue ^5.3.1 和 bootstrap-vue 的 ^2.1.0 。

读完这个问题后,我有以下内容,这似乎有效,但似乎不是正确的方法。

propsData我认为这是and的使用.$mount()让人感觉一定有更好、更惯用的方法?另外,内容好像也不能做成html?

在组件中:

<script>
    import { BPopover } from 'bootstrap-vue'
</script>
Run Code Online (Sandbox Code Playgroud)

在日历选项中:

eventDidMount: function (info) {
    new BPopover({
        propsData: {
            title: info.event.extendedProps.title,
            content: info.event.extendedProps.projectName,
            triggers: 'hover',
            target: info.el,
        }
    }).$mount()
}
Run Code Online (Sandbox Code Playgroud)

任何想法都非常感激。
非常感谢。

Dar*_*ren 5

自从发布这个问题以来,我们已经在这个项目上从 bootstrap-vue 切换到 vuetify,但解决方案仍然很可能相关,因为我们使用了插槽eventContent来添加v-tooltip

        <FullCalendar :options="calendarOptions" ref="fullCalendar">
            <template #eventContent="arg">
                <v-tooltip bottom color="teal">
                    <template v-slot:activator="{ on, attrs }">
                        <div style="min-height:20px;" v-bind="attrs" v-on="on">
                        </div>
                    </template>
                    <div style="text-align:left;">
                        Description: {{arg.event.extendedProps.description}}<br />
                        Project {{arg.event.extendedProps.projectName}}<br />
                    </div>
                </v-tooltip>
            </template>
        </FullCalendar>
Run Code Online (Sandbox Code Playgroud)

我相信插槽是 v5 的新功能。我在本期中遇到了这个问题,您也可以看到演示应用程序中使用它的示例。

文档肯定可以更好!