No TypeScript é possivel declarar as propriedades de uma classe direto no construtor. Vamos entender melhor no exemplo.
O que normalmente faríamos assim:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| class Task { public title: string; public done: boolean; public creationDate: Date; public finishDate: Date;
constructor(title: string, done: boolean, creationDate: Date, finishDate: Date) { this.title = title; this.done = done; this.creationDate = creationDate; this.finishDate = finishDate; }
}
var task: Task = new Task('My Task', false, new Date(), new Date()); console.log(task.title);
|
Podemos fazer assim:
1 2 3 4 5 6 7
| class Task { constructor(public title: string, public done: boolean, public creationDate: Date, public finishDate: Date) {}
}
var task: Task = new Task('My Task', false, new Date(), new Date()); console.log(task.title);
|
Simples! Resumimos o conteudo da classe em uma linha de código.
Obrigado Plínio Naves pela dica!