我从CDN加载jQuery的,当我尝试导入FullCalendar到我的剧本出现此错误:Browserify FullCalendar与外部的jQuery
Uncaught Error: Cannot find module 'jquery'
这里是我的脚本:
'use strict'
import $ from 'jquery'
import 'fullcalendar'
$('#calendar').fullCalendar()
我m跑这个命令来改变我的脚本:
browserify index.js -t babelify -x jquery > index.min.js
我的HTML看起来像这样:
<!DOCTYPE html>
<div id=calendar></div>
<script src=https://code.jquery.com/jquery-2.2.0.min.js></script>
<script src=index.min.js></script>
我也试图与browserify-shim但depends: ['jquery', 'moment']
它没有任何区别。
我怀疑这是因为FullCalendar JS文件有一个自己的require('jquery')
和require('moment')
UMD包装,但我认为外部标志将足够聪明,以检测到这一点。
任何方式我可以解决这个问题?
更新:这是我尝试实现的一个最小示例,但是我的实际代码涉及比FullCalendar更多的依赖项,并且所有第三方依赖项都连接成一个vendor.min.js
文件,与我们的代码分离index.js
)。
您是否尝试过使用browserify-shim的[揭露全球](https://github.com/thlorenz/browserify-shim#a-expose-global-variables-via-global)部分? – zero298
@ zero298图书馆只是将自己附加到'$'而没有暴露任何我相信的东西。我已经获得了其他jQuery插件与外部jQuery(无论有没有垫片)成功工作,只是因为某种原因没有这个。 –
如果将脚本更改为'import $'而不是'从'jquery'导入$,会发生什么? – Anthony