In this Plunk、私はAngular.ioチュートリアルを少し変更しました。角度サービスが参照されていても呼び出されていないのに、正しい値を返しています
私はheroes.serviceにdoHeroesExist
という名前の関数を追加しました。 しかし、私は決してそれを呼びません。私はそれを行う唯一のものはapp.component
ngOnInit(): void {
//this.getHeroes();
this.heroesExist = this.heroService.doHeroesExist;
console.log("app ngOnInit called...", this.heroesExist); // outputs: app ngOnInit called... true
}
で変数に割り当てそしてここhero.service.ts
ファイル内doHeroesExist
機能です。
doHeroesExist(): boolean {
console.log("doHeroesExist called..", this.doHeroesExist);
return this.doHeroesExist;
}
私は困惑しています。
なぜコンソールログにと表示されますか?関数の本体を文字列として出力するべきではありませんか?また、doHeroesExist
のconsole.logは決して印刷されません。
ご回答いただきありがとうございました。私は実際に私の質問に嫌われたことを今や認識しています。私はいくつかの変更を加えて、ここでそれを再度尋ねました:https://stackoverflow.com/questions/46657227/angular-giving-a-component-field-a-reference-to-a-service-function-and-calling – CodyBugstein