問題タブ [ember-addon]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ember.js - Ember CLI アドオンに含まれるアプリケーションの名前空間を取得するにはどうすればよいですか?
Ember CLI を作成していますember-addon
が、アドオンのファイルでアプリの構成にアクセスする必要があります。このアドオンを含むアプリの名前を知る方法がないためimport ENV from 'app-name/config/environment'
、アプリケーション自体で行うように単純に行うことはできません.
ember-addon
アドオン自体から fromを使用しているアプリケーションの名前空間にアクセスして、そのアプリケーションからインポートできるようにするにはどうすればよいですか?
javascript - Ember Addon 内からコントローラー アクションを挿入する
再生コンポーネントを備えたスタンドアロンのアドオンがあるとしましょう:
/app/components/my-record.js
アドオンがバックエンドと独立して動作し、すべてのアクションを内部で処理する必要があります。これら 2 つのアクションrecordPlay
をrecordStop
アドオン自体から処理して、消費するアプリケーションのコントローラー/ルートに触れる必要がないようにするにはどうすればよいですか?
私が試してみました:
アドオン内でアプリケーションコントローラーを作成します。`/app/controllers/application.js - これは呼び出されません
アドオン内でアプリケーションルートを作成します。`/app/routes/application.js - これは、消費するアプリケーションがアドオンのルートをオーバーライドする独自の ApplicationRoute を持っていない限り呼び出されます
アドオン内から初期化子を使用して、これら 2 つのアクションを ApplicationController に注入できますか?
編集: ApplicationRoute._actions を使用した汚い回避策
/app/initializers/record.js
ember.js - アドオンとしての Ember CLI http-mock
Ember CLI の http-mock 機能を使用して REST API エンドポイントをモックしていますが、複数の Ember CLI アプリケーションで使用したいと考えています。アドオンがこれに対する優れた解決策になると思いましたが、機能させることができないようです。Ember Addon は http-mock をサポートしていますか?
これが私がしたことです。
アドオンを作成しました
次に、アドオンに簡単なテスト エンドポイントを作成しました。
github リポジトリに公開した後、package.json でこのように Ember CLI プロジェクトにインポートしました
npm でインストールした後、アプリを実行しhttp://localhost:4200/api/users
ましたが、API エンドポイントに移動せず、代わりに Ember アプリをロードしようとしました。
複数のアプリケーションで http-mock を使用する方法はありますか?
ember.js - Ember CLI - 共有リソース アドオン
私は 2 つの ember アプリケーションを作成しています。これらのアプリケーションは、2 つの間で多くの CSS/コンポーネント/画像を共有します。2 つのアプリケーションに最新バージョンの Ember CLI を使用しています。これらすべてのリソースを共有するために、Ember CLI を使用して Ember アドオンを作成したいと考えています。
(1) スタイル、(2) js コンポーネント、および (3) 画像を共有するためにこれを行う最良の方法は何でしょうか。私は最初の 2 つの基本的な作業を行っており、画像を共有し、各アプリケーションでそれらを消費して使用できるようにする方法に苦労しています。
どんな助けでも大歓迎です!
ありがとう!
ember.js - ember-addons には ember-data と ember-qunit を含める必要がありますか?
したがって、基本的には、ember-data も ember-qunit も必要としない ember-addon を作成したので (ember-cli-mocha を使用してテストを作成しました)、それらとその依存関係を私のpackage.json
andから削除しましたbower.json
。
問題は、アドオンをビルドしようとすると、ember-cli が次のようなメッセージで不足しているファイルについて不平を言うことです。
ember-data を追加すると、パスが QUnit ファイルであるだけで、メッセージは同じになります。
完全に削除してビルドできる方法はありember-data
ますember-qunit
か?
ember.js - アドオンからオブジェクトを条件付きでインポート/インスタンス化する
アドオンを作りたい
- ホスト アプリから構成をインポートしてから、
- 注入 + ENV 変数に基づいてクラスをインスタンス化します
特に、私はPretenderを使用しており、ユーザーの構成を ENV またはプロジェクト内のオブジェクトからインポートできるようにしたいと考えていexport
ます/app
。
次に、環境がそうではなく、コマンドに渡された引数がproduction
ない場合、アドオンがユーザーの構成で Pretender サーバーを挿入してインスタンス化するようにします。--proxy
ember serve
これは可能ですか?
ember.js - Ember-CLI アプリケーション + Ember-CLI アドオンの操作
そのため、私が取り組んでいるこの Ember-CLI アプリケーションには、それが使用する共有リソース Ember-CLI アドオンがあります。私はそれらの両方で同時に開発しています。
アドオンに変更が加えられたときにアプリケーションを自動リロードするように設定する方法があるかどうか疑問に思っていました。それらは「npm リンク」を介してリンクされます。サーバーを停止/再起動することなく、アドオンで開発し、アプリケーション内の変更を即座に確認できれば素晴らしいと思います。
ありがとう!
ember.js - コンポーネントのテンプレートなしでモデル プロパティを ember に双方向バインドできますか?
私は単純な残り火コンポーネントを持っています
テンプレートを(意図的に)必要としないようにしています...しかし、テンプレートを削除すると、コントローラーにバインドされなくなります(ここに私が持っていたテンプレートがありました)
...モデル/またはコントローラーを更新しません(以下の単純なコントローラー)
これは、問題を示すための作業用の jsbin です。
http://emberjs.jsbin.com/puqepaqijo/1/
注:テンプレートを追加すると機能します...しかし、自分のテンプレートをember-cliアドオンに同梱する必要なく、これをビルド/バインドしたいと思います
ember.js - Ember アドオン プロジェクトでダミー アプリを実行すると、app/styles/app.less が見つかりません
Ember addon
アドオン プロジェクト内で ember サーバーを実行してプロジェクトをテストしようとしています。これにより、ダミーアプリが実行されます。ただし、少ないファイルが ember-cli-less 機能で自動的にビルドされません (期待/app/styles/app.less
):
私が持っているいくつかのファイル:
ただし、ember サーバーを実行するとエラーが発生します。