2016-10-17 3 views
0

私は現在、プロジェクトにAngular-Meteorを使用しています。NPMの使用について質問がありました。私は特定のライブラリ(slick-carousel ...とangle-slick-carouselも使用しています)を使用しています.npm経由でインストールしてからアプリで使用しようとすると、jqueryがmodules.jsで2回定義されます私が推測している流星によって結ばれたファイル。だから私は滑らかなカルーセル(完璧)の前に一度定義されたJQueryを取得します。それからslick-carouselの後に再び定義され、登録された$ .fn.slick関数が消去されます。 slick-carouselノードパッケージにはjqueryを含むnode_modulesフォルダが付属しているため、jqueryが再びロードされると思います。角度流星のカルーセルによりJQueryが2回ロードされる

これは、次の現象が発生する原因:

modules.js?hash=96df622…:14632 TypeError: slickness.not(...).slick is not a function

jQueryのは一度だけロードされ、滑らかな-カルーセル前に取得しますので、これを設定する最も簡単な方法は何ですか?私は、ここで依存関係の順序をパッケージャに知らせるかなり簡単な方法があると思いますが、私はこの全体の生態系にはまだまだ新しいものです。

+0

modules.jsと言うと、.meteor/packagesを意味しますか? Meteorにはデフォルトでjqueryが含まれていますが、Angularも同様です。おそらく、おそらくnode_modules/*/package.jsonファイルの1つにパッケージ依存関係を持つ2つの異なるバージョンのjqueryを含む可能性が高いです。パッケージが特定のバージョンに依存している場合、そのバージョンをインストールすることができます – Mikkel

答えて

0

slick-carousel依存関係全体をインポートするのではなく、必要なファイルのみをインポートします。

たとえば、 「slick-carousel/slick/slick.css」をインポートします。 および "slick-carousel/slick/slick.js"をインポートします。

複製されたjqueryファイルを含むslick-carouselのnode_modulesディレクトリをインポートしないでください。

関連する問題