Angular 2 - Formas
Angular 2 também pode projetar formulários que podem usar encadernação bidirecional usando o ngModeldiretiva. Vamos ver como podemos conseguir isso.
Step 1- Crie um modelo que é um modelo de produtos. Crie um arquivo chamadoproducts.ts Arquivo.
Step 2 - Coloque o seguinte código no arquivo.
export class Product {
constructor (
public productid: number,
public productname: string
) { }
}
Esta é uma classe simples que possui 2 propriedades, productid e productname.
Step 3 - Crie um componente de formulário de produto chamado componente product-form.component.ts e adicione o seguinte código -
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');
}
Os seguintes pontos precisam ser observados sobre o programa acima.
Crie um objeto da classe Product e adicione valores ao productid e productname.
Use o templateUrl para especificar a localização do nosso product-form.component.html que irá renderizar o componente.
Step 4- Crie o formulário real. Crie um arquivo chamado product-form.component.html e coloque o código a seguir.
<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>
O seguinte ponto deve ser observado sobre o programa acima.
o ngModel diretiva é usada para vincular o objeto do produto aos elementos separados no formulário.
Step 5 - Coloque o seguinte código no arquivo app.component.ts.
import { Component } from '@angular/core';
@Component ({
selector: 'my-app',
template: '<product-form></product-form>'
})
export class AppComponent { }
Step 6 - Coloque o código abaixo no arquivo app.module.ts
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- Salve todo o código e execute o aplicativo usando npm. Vá para o seu navegador, você verá a seguinte saída.