Javascript VueJS with FullCalendar:仅在index.html中链接脚本后加载FullCalendar

Javascript VueJS with FullCalendar:仅在index.html中链接脚本后加载FullCalendar,javascript,jquery,vue.js,fullcalendar,Javascript,Jquery,Vue.js,Fullcalendar,我想将fullCalendar加载到我的Vue组件中,但出现错误“fullCalendar不是函数”。似乎我在index.html文件中加载的所有脚本都是在加载Vue组件之后加载的 在index.html文件中,我加载了moment.min.js、jquery.min.js和fullcalendar.min.js 在我的Calendar.vue中,我有 export default { mounted () { $('#calendar').fullCalendar({

我想将fullCalendar加载到我的Vue组件中,但出现错误“fullCalendar不是函数”。似乎我在index.html文件中加载的所有脚本都是在加载Vue组件之后加载的

在index.html文件中,我加载了moment.min.js、jquery.min.js和fullcalendar.min.js

在我的Calendar.vue中,我有

export default {

    mounted () {
        $('#calendar').fullCalendar({})
    }

}
除非我显式地执行“从'jquery'导入$”,否则$将不可用,这表明index.html文件中的脚本在组件之后才会加载

我如何解决这个问题


其他详细信息:我使用的是VueJS提供的Webpack,因此我使用的是VueJS npm模块,而jquery、moment和fullcalendar库都是从我的index.html链接的CDN中获得的。

假设您没有其他问题导致您的
fullcalendar
函数未定义,你应该能够很容易地让它工作。由于捆绑包不包含jQuery,您可以通过以下方式指定捆绑包应最后加载:

  • 将脚本标记放在身体的末端
  • 或者在任何地方使用它,但不使用defer属性:
  • 或者将相关代码打包到
    window.onload=()=>{//Instanciate here您的新Vue()}(如果您的jQuery包含在包中,也可以使用!)

对我来说,唯一可行的方法是从“jquery”导入$,并要求使用('fullcalendar')

一个不错的解决方案是使用vue full calendar

如果我们不添加以下行以定义jquery“$”,它将生成相同的行为:


Vue.js是否在其他js文件之后加载(如中)?不确定,您在哪里进行加载,以及如何在js文件之后加载?也许在上查看源代码更容易查看顺序。顺便说一句,我没有创建这个示例-只是通过搜索网络找到了它。你能在这里发布链接到你找到它的地方吗?它是在vuejsexamples.com上找到的。没有bundle.js文件可以加载到index.html中,似乎webpack在将所有内容编译到app.js时会自动执行。奇怪的是,当我查看页面源代码时,在我加载矩、jquery和fullcalendar之后,它在正文的末尾加载它,所以不确定为什么它仍然给我错误
window.jQuery = window.$ = require('jquery')