8-3 Créer un footer
Nous avons une barre de navigation, il manque un footer pour compléter la structure de base de la page.
Créer le composant
-
Créez un composant
FooterviaAngular CLIng generate component shared/components/footerinfoTout comme la barre de navigation, il s'agit d'un composant partagé à l'ensemble de l'application. Nous le mettons donc dans le dossier
shared. -
Cela devrait avoir créé un fichier
src/app/shared/components/footer.tsdans votre projet -
Commençons par une version minimaliste du footer. Modifiez
footer.ts:src/app/shared/components/footer.ts@Component({
selector: 'app-footer',
imports: [],
template: `
<footer class="border-top text-muted py-3 mt-4">
<div class="container">
© 2025 - Houdini
</div>
</footer>
`,
styles: ``
})infopy-3applique unpaddingde 1rem eny(haut et bas)mt-4appliquemargin-top: 1.5rem
Intégrer le composant à l'application
Dans le fichier src/app/app.ts, ajoutez la référence au nouveau composant de footer dans la portion template, dans le bas complètement.
@Component({
selector: 'app-root',
imports: [RouterOutlet, ProjetsListe, Navbar, Footer],
template: `
<app-navbar></app-navbar>
<h1>{{title}}!</h1>
<app-projets-liste></app-projets-liste>
<router-outlet />
<app-footer></app-footer>
`,
styles: [],
})
Vous pouvez visiter le site et devriez être en mesure de constater la présence du footer.

Constat: visuellement ce n'est pas vraiment élégant.
Pour obtenir un résultat satisfaisant, c'est-à-dire que la zone de contenu prend toute la place en hauteur, que la navigation soit dans le haut et le footer dans le bas complètement, la façon la plus flexible et recommandée est d'utiliser le principe de flexbox.
Nous allons organiser le tout un peu plus loin.