Storing the form data
Let's have a peek at the interface of the AddDeveloper
component's controller again:
export class AddDeveloper { submitted: false; successMessage: string; developer = new Developer(); //... constructor(private developers: DeveloperCollection) {} addDeveloper(form) {...} }
This interface has a field of the Developer
type, and we bind the form controls to its properties using the NgModel
directive. The class also has a method called addDeveloper
, which is being invoked on the submission of the form. We declare this by binding to the ngSubmit
event using the following:
<!-- ch7/multi-page-template-driven/add_developer.html --> <form #f="form" (ngSubmit)="addDeveloper()" class="form col-md-4" [hidden]="submitted"> ... <button class="btn btn-default" type="submit" [disabled]="!f.form.valid">Add</button> </form>
In the preceding snippet, we should notice two more things. We got a reference to the form using...