私はember2.5.1で作業を始めました。簡単なサービスを作ってコンポーネントを実装してみたかったのです。問題はサービスが常に定義されておらず、そのメソッドを呼び出すことができないということです。サービスは未定義ですか?
/components/status-component.js
import Ember from 'ember';
export default Ember.Component.extend({
logger: Ember.inject.service(),
actions: {
test() {
this.get('logger').log("testing");
}
}
});
/services/logger.js
その他の情報:私もルーティング可能なコンポーネントを作成しようとし、私はそれがだのかはわかりませんサービスを台無しにする?私は基本的にダミーstatus-proxy-component.hbsを指すルートを持っていますが、そこには{{status-component}}があります。 status-component.hbsは別のファイルです。
なぜこれが機能しないのでしょうか?サービスから何かを見逃してしまったのか、プロキシがそれを台無しにしていますか?
おっと、私はまだ私のテストコードを持っていた。それは私が元々使っていたもので、うまくいかなかった。それから、私はthis.logger.logを使用しようとしましたが、どちらも動作しませんでした。私は私の質問を更新します。 – Taztingo
それはうまくいくはずです。それには何も問題はありません。このtwiddleをチェックしてください:https://ember-twiddle.com/58588a0ce533b11d8a712d1a292fd845?openFiles=services.logger.js%2Ctemplates.components.log-button.hbs – Igor
私は最初から別のプロジェクトを作成してしまい、これを手に入れることができましたワーキング。助けてくれてありがとう、前のプロジェクトで何が間違っていたのか分からない。 – Taztingo