Laravel 5.8 + FullCalendar + Popover:尝试复制演示失败并出现弹出错误

Laravel 5.8 + FullCalendar + Popover: Attempting to replicate demo is failing with popover error

在我的应用程序中,我尝试使用 FullCalendar 来显示事件。具体来说,我正在尝试复制他们提供的 demo example

我正在使用 maddHatter\laravel-fullcalendar

我在 blade 模板中生成日历的 Laravel/PHP 代码如下:

            $cal_events = [];
            foreach ($events as $key => $value) {
                $cal_events[] = Calendar::event(
                    $value->eventName,
                    false,
                    new \DateTime($value->eventStartDate),
                    new \DateTime($value->eventEndDate),
                    $value->eventID,
                    // Add color
                    [
                        'color' => '#0000FF',
                        'textColor' => '#FFFFFF',
                        'url' => env('APP_URL')."/events/$value->slug",
                        'description' => $value->eventDescription,
                    ]
                );
            }

            $calendar = Calendar::addEvents($cal_events)
            ->setCallbacks([
                'eventRender' => 'function(event, element) {
                    element.popover({
                        container: "body",
                        html: true,
                        placement: "top",
                        trigger: "hover",
                        title: "Random Title",
                        content: "Some Content"
                    });
                 }'
            ]);

<div class="container">
    <div class="panel panel-default">
        <div class="panel-heading">
            <b>{!! $header !!} </b>
        </div>
        <div class="panel-body" >
            {!! $calendar->calendar() !!}
        </div>
    </div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.9.0/moment.min.js"></script>
<script src="https://unpkg.com/tooltip.js/dist/umd/tooltip.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/2.2.7/fullcalendar.min.js"></script>
{!! $calendar->script() !!}

当我没有上面的 ->setCallBacks() 部分时,我可以让日历与我的事件一起显示。

在 Chrome 中查看控制台时添加它会导致以下错误:

jquery.min.js:2 Uncaught TypeError: element.popover is not a function
at Object.eventRender (1:formatted:83)
at me.U [as trigger] (fullcalendar.min.js:6)
at t.constructor.trigger (fullcalendar.min.js:8)
at t.constructor.resolveEventEl (fullcalendar.min.js:8)
at HTMLAnchorElement.<anonymous> (fullcalendar.min.js:7)
at Function.each (VM2577 jquery.min.js:2)
at r.fn.init.each (VM2577 jquery.min.js:2)
at t.constructor.renderFgSegEls (fullcalendar.min.js:7)
at t.constructor.renderFgSegs (fullcalendar.min.js:7)
at t.constructor.renderEvents (fullcalendar.min.js:7)

我错过了什么?

如果还有什么需要知道的,尽管询问,我会提供。

您链接到的 CodePen 演示包括 Bootstrap 的 JavaScript 和 CSS 文件,其中 provide the popover functionality。从您展示的内容来看,您的版本没有。

检查 CodePen 中包含的内容(它位于“设置”区域)并确保您的页面上有相同或非常相似的 Bootstrap 版本。