Angular 2 - Formlar

Angular 2, iki yönlü ciltlemeyi kullanan formlar da tasarlayabilir. ngModeldirektif. Bunu nasıl başarabileceğimizi görelim.

Step 1- Ürün modeli olan bir model oluşturun. Adlı bir dosya oluşturunproducts.ts dosya.

Step 2 - Aşağıdaki kodu dosyaya yerleştirin.

export class Product { 
   constructor ( 
      public productid: number, 
      public productname: string 
   ) {  } 
}

Bu, ürün kimliği ve ürün adı olmak üzere 2 özelliğe sahip basit bir sınıftır.

Step 3 - product-form.component.ts bileşeni adlı bir ürün formu bileşeni oluşturun ve aşağıdaki kodu ekleyin -

import { Component } from '@angular/core';
import { Product } from './products';

@Component ({
   selector: 'product-form',
   templateUrl: './product-form.component.html'
})

export class ProductFormComponent {
   model = new Product(1,'ProductA');
}

Yukarıdaki programla ilgili olarak aşağıdaki noktalara dikkat edilmelidir.

  • Ürün sınıfının bir nesnesini oluşturun ve ürün kimliği ile ürün adına değerler ekleyin.

  • Bileşeni oluşturacak product-form.component.html dosyamızın konumunu belirtmek için templateUrl'yi kullanın.

Step 4- Asıl formu oluşturun. Product-form.component.html adlı bir dosya oluşturun ve aşağıdaki kodu yerleştirin.

<div class = "container">
   <h1>Product Form</h1>
   <form>
      <div class = "form-group">
         <label for = "productid">ID</label>
         <input type = "text" class = "form-control" id = "productid" required
            [(ngModel)] = "model.productid" name = "id">
      </div>
      
      <div class = "form-group">
         <label for = "name">Name</label>
         <input type = "text" class = "form-control" id = "name"
            [(ngModel)] = "model.productname" name = "name">
      </div>
   </form>
</div>

Yukarıdaki programla ilgili olarak aşağıdaki noktaya dikkat edilmelidir.

  • ngModel direktif, ürünün nesnesini formdaki ayrı öğelere bağlamak için kullanılır.

Step 5 - Aşağıdaki kodu app.component.ts dosyasına yerleştirin.

import { Component } from '@angular/core';

@Component ({
   selector: 'my-app',
   template: '<product-form></product-form>'
})
export class AppComponent { }

Step 6 - Aşağıdaki kodu app.module.ts dosyasına yerleştirin

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { FormsModule } from '@angular/forms';
import { ProductFormComponent } from './product-form.component';

@NgModule ({
   imports: [ BrowserModule,FormsModule],
   declarations: [ AppComponent,ProductFormComponent],
   bootstrap: [ AppComponent ]
})
export class AppModule { }

Step 7- Tüm kodu kaydedin ve uygulamayı npm kullanarak çalıştırın. Tarayıcınıza gidin, aşağıdaki çıktıyı göreceksiniz.