Ember-cli アドオンのコンポーネントで使用するために、Bower を介して jQuery プラグインを正常にインポートしています。ただし、これが機能するのは、アドオンと消費アプリケーションの両方でこのプラグインに Bower 依存関係を定義したためです。
これは私が間違っているようです。消費するアプリケーションが、アドオンで提供されるべきリソースへの依存関係を宣言しなければならないのはなぜですか?
問題の核心は、app
構築時のコンテキストにあるようです。import
アドオンのindex.js
ファイルで次のステートメントを使用すると、消費するアプリケーションで Bower 依存関係を省略できます。
app.import('node_modules/my-ember-cli-addon/bower_components/jquery.stickyHooters/dist/jquery.stickyHooters.min.js');
...しかし、アドオンをスタンドアロンアプリケーションとしてビルドすると、これが壊れます。その場合、次のパスが必要です。
app.import('bower_components/jquery.stickyHooters/dist/jquery.stickyHooters.min.js');
これはどのように機能することを意図していますか?
- Bower の依存関係を 2 か所で宣言するのは直感に反するようです
- アドオンの
app
コンテキストを検出する方法がわかりませんindex.js