CDNからjQueryをロードしていますが、インポートしようとするとこのエラーが発生します FullCalendar 私のスクリプトに:
不明なエラー:モジュール「jquery」が見つかりません
ここに私のスクリプトです:
"use strict"
import $ from "jquery"
import "fullcalendar"
$("#calendar").fullCalendar()
スクリプトを変換するためにこのコマンドを実行しています:
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ファイルには独自のUMDラッパーがあるためだと思われます require("jquery")
そして require("moment")
しかし、外部フラグはこれを検出するのに十分スマートだと思いました。
この問題を回避する方法はありますか?
更新:これは私が達成しようとしているものの最小限の例でしたが、実際のコードにはFullCalendarよりも多くの依存関係が含まれており、すべてのサードパーティの依存関係は、 vendor.min.js
コードから分離されたファイル( index.js
)。
回答:
回答№1は6私はそれを変更することで動作させることができました require("jquery")
フルカレンダー工場で $
.
また、使用する必要はありません import $ from "jquery"
index.jsファイル内。 fullcalendar npmではすでに依存関係になっています。
実行後
browserify index.js -t babelify -x jquery > index.min.js
fullcalendarファクトリー関数でindex.min.jsファイルを編集します:
else if(typeof exports === "object") {
module.exports = factory(require("jquery"), require("moment"));
}
に:
else if(typeof exports === "object") {
module.exports = factory($, require("moment"));
}
または、node_modules / fullcalendar / dist / fullcalendar.jsファイルでこの編集を直接行うこともできます。
私はこれが助けて欲しい!