我從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