diff --git a/js/main.js b/js/main.js index a44ba05e43311271efe65c978db1edca58abeabe..a8744d9737ad9adbd05855a5a9a1dbdef19ac9c9 100644 --- a/js/main.js +++ b/js/main.js @@ -3,8 +3,11 @@ import Component from './components/Component.js'; import HomePage from './pages/HomePage.js'; import PageRenderer from './PageRenderer.js'; -const homePage = new HomePage(data); +let homePage = new HomePage([]); PageRenderer.titleElement = document.querySelector('.pageTitle'); PageRenderer.contentElement = document.querySelector('.pizzasContainer'); -PageRenderer.renderPage(homePage); +PageRenderer.renderPage(homePage); // affiche une page vide + +homePage.pizzas = data; +PageRenderer.renderPage(homePage); // affiche la liste des pizzas diff --git a/js/pages/HomePage.js b/js/pages/HomePage.js index 1f31b9531b69fec6c2bf165c07a3e2248272ba97..740552388a149c7d597b990ecb85d2476df0fa63 100644 --- a/js/pages/HomePage.js +++ b/js/pages/HomePage.js @@ -2,10 +2,15 @@ import Page from './Page.js'; import PizzaThumbnail from '../components/PizzaThumbnail.js'; export default class HomePage extends Page { + #pizzas; + constructor(pizzas) { - super( - 'La carte', - pizzas.map(pizza => new PizzaThumbnail(pizza)) - ); + super('La carte'); + this.pizzas = pizzas; + } + + set pizzas(value) { + this.#pizzas = value; + this.children = this.#pizzas.map(pizza => new PizzaThumbnail(pizza)); } }