L'application côté back
Par défaut, dans le dossier app/Resources/views, nous trouvons le fichier base.html.twig. Etant donné que ce fichier sera celui utilisé par tous les autres templates, nous devons le personnaliser comme ceci :
Ce qui est intéressant ici, c'est le bloc `
`.
Comme nous sommes en environnement de développement, on insert le fichier servi par Webpack depuis le port 3000 du localhost (voir la configuration définie précédemment dans "output" de webpack.config.js). On remarque que le body est vide, ce qui nous fera une belle page blanche. Notez aussi que le fichier css (style.css
) est servi de la même manière que bundle.js.
Le contrôleur par défaut affiche la page index.html.twig
(qui elle-même étend base.html.twig, que nous venons de modifier). Voir le fichier src/AppBundle/Controller/DefautController.php
.
Personnalisons ce fameux fichier index dans app/Resources/views/default/index.html.twig
:
Voilà pour la partie twig.
Modifions légèrement la route utilisée dans le contrôleur src/AppBundle/Controller/DefautController.php
aussi :
Ainsi, toutes les urls seront gérées par ce contrôleur et React va prendre la suite en gérant le html et l'état des objets de l'application front.
Dans le cadre d'une application avec d'autres contrôleurs, il faudrait juste veiller à placer cette route en dernier dans le routing (voir le fichier app/config/routing.yml
où il n'y a qu'un lien vers ce contrôleur pour l'instant), pour ne pas écraser la gestion des autres routes.
En résumé de cette partie, nous avons créé les conditions pour que React s'exécute au sein de notre application Symfony en ajoutant une simple balise div avec un id qui vaut "app".
Passons au plus intéressant : l'application React en elle-même.
Last updated