我想将很棒的“ helloweek” JavaScript代码包含到我的Laravel项目中。为此,我已经获取了helloweek.min.js文件,并将其放置在项目的/ public / js文件夹中。我对css文件(helloweek.min.css)做了同样的事情,它在/ public / css文件夹中。

这些文件包括如下:

<link href="{{ asset('css/helloweek.min.css') }}" rel="stylesheet">
<script src="{{ asset('js/helloweek.min.js') }}" defer></script>
<script type="text/javascript">
const myCalendar = new HelloWeek({
    selector: '.hello-week',
    lang: 'en',
    langFolder: '{{ url('/') }}/assets/lang/',
    format: 'YYYY-MM-DD',
    weekShort: true,
    monthShort: false,
    multiplePick: false,
    defaultDate: false,
    todayHighlight: true,
    disablePastDays: true,
    disabledDaysOfWeek: false,
    disableDates: false,
    weekStart: 1,
    daysHighlight: false,
    range: false,
    minDate: false,
    maxDate: false,
    nav: ['◀', '▶'],
    onLoad: () => { /** callback function */ },
    onChange: () => { /** callback function */ },
    onSelect: () => { /** callback function */ },
    onClear: () => { /** callback function */ }
});</script>


我可以使用“ http://homestead.test/js/helloweek.min.js”和“ http://homestead.test/css/helloweek.min.css”来访问我的两个文件,并且通过浏览器控制台看到它们也包含在我的网页中。

但是我在控制台中收到以下错误:home:97 Uncaught ReferenceError:未在home:97定义HelloWeek

据我所知,这应该意味着它找不到该库,但是(根据我非常有限的laravel知识),它似乎已正确包含。

有人对此有解决方案吗?提前致谢!

最佳答案

由于HelloWeek中的defer,未定义<script src="{{ asset('js/helloweek.min.js') }}" defer></script>

Defer使脚本在页面完成解析后在末尾加载。

由于helloweek.min.js仍未执行,因此尚未定义HelloWeek

09-25 15:29