Skip to content
Snippets Groups Projects
Commit 2061fe28 authored by Victor Mougel's avatar Victor Mougel
Browse files

formulaire

parent 24677fb1
Branches
No related tags found
No related merge requests found
...@@ -18,6 +18,7 @@ export default class Router { ...@@ -18,6 +18,7 @@ export default class Router {
this.titleElement.innerHTML = `<h1>${route.title}</h1>`; this.titleElement.innerHTML = `<h1>${route.title}</h1>`;
// affichage de la page elle même // affichage de la page elle même
this.contentElement.innerHTML = route.page.render(); this.contentElement.innerHTML = route.page.render();
route.page.mount?.(this.contentElement);
} }
} }
......
...@@ -2,17 +2,14 @@ import Router from './Router'; ...@@ -2,17 +2,14 @@ import Router from './Router';
import data from './data'; import data from './data';
import PizzaList from './pages/PizzaList'; import PizzaList from './pages/PizzaList';
import Component from './components/Component'; import Component from './components/Component';
import PizzaForm from './pages/pizzaForm.js';
Router.titleElement = document.querySelector('.pageTitle'); Router.titleElement = document.querySelector('.pageTitle');
Router.contentElement = document.querySelector('.pageContent'); Router.contentElement = document.querySelector('.pageContent');
const pizzaList = new PizzaList(data), const pizzaList = new PizzaList(data),
aboutPage = new Component('section', null, 'Ce site est génial'), aboutPage = new Component('p', null, 'ce site est génial'),
pizzaForm = new Component( pizzaForm = new PizzaForm();
'section',
null,
'Ici vous pourrez ajouter une pizza'
);
Router.routes = [ Router.routes = [
{ path: '/', page: pizzaList, title: 'La carte' }, { path: '/', page: pizzaList, title: 'La carte' },
......
import Component from '../components/Component';
export default class Page extends Component {
element;
constructor(className, children) {
super('section', { name: 'class', value: className }, children);
}
mount(element) {
this.element = element;
}
}
import Component from '../components/Component.js'; import Component from '../components/Component.js';
import PizzaThumbnail from '../components/PizzaThumbnail.js'; import PizzaThumbnail from '../components/PizzaThumbnail.js';
import Page from './Page.js';
export default class PizzaList extends Component { export default class PizzaList extends Page {
#pizzas; // propriété privée #pizzas; // propriété privée
constructor(pizzas) { constructor(pizzas) {
......
import Page from './Page.js';
export default class PizzaForm extends Page {
render() {
return /*html*/ `
<form class="pizzaForm">
<label>
Nom :
<input type="text" name="name">
</label>
<button type="submit">Ajouter</button>
</form>`;
}
mount(element) {
super.mount(element);
}
submit(event) {}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment