あるコンポーネントのtsファイルから別のコンポーネントのHTMLファイルにデータを渡すことができます。以下のコードをご参照ください:@Input文字列をあるコンポーネントから別のコンポーネントに渡す方法
export class TestComponent {
@Component({
selector: 'app-data',
})
@Input() data : string;
}
をそして、私は、以下のようにのようにそれを使用することができる午前私の別のコンポーネントのHTMLファイルに:
<app-data [data] = "Hello"></app-data>
私の質問は、HTMLの代わりに別のコンポーネントからのデータを渡すのですファイル、別のコンポーネントの.tsファイルから渡したいと思います。サービスとエミッタを使用して解決策を見つけましたが、@Output()
を使用して解決したいと思います。
可能な解決方法を教えてください。
編集ユースケース:
私はそれにいくつかのテンプレートを持っている共有コンポーネントを追加しようとしています。テンプレートは、テンプレートが使用されているコンポーネントに基づいて更新されます。テンプレート要件に基づいて更新中の文字列メッセージがたくさんあります。
問題は、HTMLからすべての文字列を渡すとコードが汚れて見えることです。だから、HTMLから渡す代わりに、私はtsファイルから渡したいと思っています。
注:両方のコンポーネントは同じレベルです。
あなたは 'component.ts'ファイルを渡すか、または現在の値を持つプロパティを保持している全体' object'を通過したいですか? –
他のコンポーネントの入力パラメータ 'data'を、HTMLではなくtsファイルからテストコンポーネントに渡したいとします。 –
1つの.tsファイルから直接入力または出力を持つ別の.tsファイルにデータを渡すことはできません。それらは両方ともテンプレート(html) – Dino