アプリケーション開発では、コンポーネントにデータを送信しなければならない場合があります。このデータは、コンポーネントをカスタマイズしたり、親コンポーネントから子コンポーネントに情報を送信したりするために使用できます。
Angularは、input と呼ばれる概念を使用しています。これは、他のフレームワークの props と似ています。input プロパティを作成するには、input() 関数を使用します。
NOTE: 詳しくは、入力プロパティでデータを受け取る方法についてのガイドをご覧ください。
このアクティビティでは、input() 関数を使用してコンポーネントに情報を送信する方法を学びます。
Input プロパティを作成するには、コンポーネントクラスのプロパティを input() 関数で初期化します。
user.ts
class User { occupation = input<string>();}
input を通じて値を渡す準備ができたら、属性構文を使用してテンプレートで値を設定できます。以下は例です。
app.ts
@Component({ ... template: `<app-user occupation="Angular Developer"></app-user>`})export class App {}
input 関数は InputSignal を返します。値を読み取るには、そのシグナルを関数として呼び出します。
user.ts
@Component({ ... template: `<p>ユーザーの職業は {{occupation()}} です。</p>`})
-
input()プロパティを定義するuser.tsのUserクラスにnameというinputプロパティを定義しましょう。型はstringで、初期値は設定せず、input()を引数なしで呼び出します。また、テンプレートを更新して、文の最後でnameプロパティを呼び出して補間しましょう。 -
inputプロパティに値を渡すapp.tsのコードを更新して、nameプロパティに"Simran"の値を送信します。コードが正常に更新されると、アプリケーションに
The user's name is Simranと表示されます。
これはすばらしいことですが、コンポーネント通信の片方向だけです。子コンポーネントから親コンポーネントに情報とデータを送信したい場合はどうでしょうか?次のレッスンでその方法を学びましょう。
P.S. あなたはすばらしいです - 頑張ってください 🎉