Comment intégrer Webpack Encore avec EasyAdmin
Publié le 08/10/2019
EasyAdmin est un excellentissime bundle permettant de générer très facilement une interface d'admin, grâce à une configuration en yaml.
C'est très simple et ça fonctionne merveilleusement bien. Beaucoup, beaucoup plus accessible que Sonata Admin, qui possède une courbe d'apprentissage assez pentue!
A ce jour, l'intégration de vos endpoints Webpack Encore ne sont pas encore pris en charge.
Pour utiliser Webpack Encore dans EasyAdmin, nous allons donc devoir surcharger le template layout de EasyAdmin.
Commencez par copier le fichier situé dans /vendor/easycorp/easyadmin-bundle/src/Resources/views/default/layout.html.twig dans le répertoire /templates/bundles/EasyAdminBundle/default/
En partant du principe que vous avez créé un endpoint "admin" dans votre config Webpack Encore, ajoutez alors dans le template :
{% block head_stylesheets %}
<link rel="stylesheet" href="{{ asset('bundles/easyadmin/app.css') }}">
// Cette ligne doit être ajoutée
{{ encore_entry_link_tags('admin') }}
{% endblock %}
{% for js_asset in easyadmin_config('design.assets.js') %}
<script src="{{ asset(js_asset) }}"></script>
// Cette ligne doit être ajoutée
{{ encore_entry_script_tags('admin') }}
{% endfor %}
Enjoy !!!