Angular で@Input()を使用する

Muhammad Adil 2023年1月30日
  1. Angular の@Input() ディレクティブ
  2. Angular アプリケーションで@Input() を使用する手順
Angular で@Input()を使用する

この記事はすべて、Angular@Input() について説明しています。これは、Angular で使用される関数で、ユーザーから入力を受け取り、それをプログラムでの処理に使用します。この関数を使用して、ファイルを読み取り、外部 API からデータを取得することもできます。

Angular の@Input() ディレクティブ

@Input() ディレクティブは、その名前が示すように、入力フィールドに使用されます。 @Input() は、フォームフィールドおよびテキストボックスでのユーザー入力をキャプチャするのに最適です。

ユーザーが情報を入力すると、フィールドまたはテキストボックスの値が自動的に更新されます。また、他の入力および ngModelOptions からの値を受け入れて、その値を自動的に更新します。

@Input() ディレクティブには、typename、および value の 3つの属性があります。

  • type 属性は、作成する入力フィールドタイプを指定します。
  • name 属性は入力フィールドの ID を指定し、JavaScript コードでその名前として使用されます。
  • デフォルト値が設定されていないテキスト入力フィールドを作成する場合は、value 属性が必要です。

以下は、入力フィールドの有効なタイプのリストです。

  • Text
  • Password
  • Email Address
  • Number
  • Date Picker (Date)
  • Time Picker (Time)
  • Range Slider (Range)
  • Checkbox (Checkbox)

@Input() を使用するには、目的の HTML 要素にディレクティブとして追加する必要があります。

@Input() は、親コンポーネントから子コンポーネントにデータを送信するために使用されますが、 @Output() は、子コンポーネントから親コンポーネントにデータを渡すために使用されます。 @Input() の典型的な例は、ユーザーの年齢を尋ねることです。

次のコードは、ユーザーの年齢を尋ねるプロンプトを表示し、それを呼び出し元の関数に返します。呼び出し元の関数は、年齢と呼ばれる変数に割り当てます。

var age = Input("Please enter your age");

Angular アプリケーションで@Input() を使用する手順

Angular アプリケーションで@Input() を使用するには、次の 3つの手順があります。

  • HTML 要素に@Input() を追加します。
  • 入力でバインドする要素に ng-model 属性を追加します。
  • コントローラーの ng-model 属性に式を割り当てます。

TypeScript コード:

import { Component } from '@angular/core';
@Component({
    selector: 'my-app',
    templateUrl: './app.component.html',
    styleUrls: [ './app.component.css' ]
})
export class AppComponent  {
    isFocusStyle = false;
    type = 'INFO';
    onFocus() {
        this.isFocusStyle = true;
        this.type = 'INFO';
    }
    onEnter() {
        this.isFocusStyle = false;
        const input = document.querySelector('input');
    }
}

HTML コード:

<h1>Example of Angular Input</h1>
<div class="input-wrapper" [ngClass]="{'focus-style': isFocusStyle}">
    <input type="test" placeholder=" Write " (focus)="onFocus()">
</div>

上記のコードのライブデモンストレーションを確認するには、こちらをクリックしてください。

著者: Muhammad Adil
Muhammad Adil avatar Muhammad Adil avatar

Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.

Facebook

関連記事 - Angular Input