#13: 🚧 Refactoriser App

Nous allons effectuer un petit refactoring car l'app-root ne devrait pas avoir un template aussi grand et toute cette logique. Il devrait simplement appeler un autre composant qui s'en occupera.

  • CrΓ©er un composant nommΓ© list-manager avec la commande suivante:

ng g c list-manager
  • DΓ©placer le code du composant app-root vers list-manager.

  • Vous pouvez garder le titre dans app-root, et lui donner une belle valeur.

  • Attention Γ  ne pas changer le nom de la classe du composant list-manager!

src/app/app.component.ts
@Component({
  selector: 'app-root',
  standalone: true,
  imports: [CommonModule],
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent {
  title = 'My To-Do List App';
}
src/app/app.component.html
    <h1>
      Welcome to {{ title }}!
    </h1>
src/app/list-manager/list-manager.component.ts
import { CommonModule } from '@angular/common';
import { Component } from '@angular/core';
import { InputButtonUnitComponent } from '../input-button-unit/input-button-unit.component';
import { TodoItem } from '../interfaces/todo-item';
import { TodoItemComponent } from '../todo-item/todo-item.component';

@Component({
  selector: 'app-list-manager',
  standalone: true,
  imports: [CommonModule, InputButtonUnitComponent, TodoItemComponent],
  template: './list-manager.component.html',
  styleUrls: ['./list-manager.component.scss']
})
export class ListManagerComponent {
  todoList: TodoItem[] = [
    {title: 'install NodeJS'},
    {title: 'install Angular CLI'},
    {title: 'create new app'},
    {title: 'serve app'},
    {title: 'develop app'},
    {title: 'deploy app'},
  ];

  addItem(title: string): void {    
    this.todoList.push({ title });
  }
}
  • utilisez le nouveau composant Γ  partir du template app-root et importer le :

VoilΓ ! Nous pouvons continuer.

circle-info

πŸ’Ύ Pusher votre code sur GitHub

Committez tous vos changements en exΓ©cutant cette commande dans votre rΓ©pertoire de projet.

Pusher vos changements sur GitHub en exΓ©cutant cette commande dans votre rΓ©pertoire de projet.

Last updated