Frontend watch
Le watch frontend reconstruit les sources sous src/main/frontend pendant que l'application est en cours d'exécution et envoie la sortie au navigateur. C'est le côté développement du bundler frontend et nécessite que webforj.devtools.livereload.enabled soit activé, voir les paramètres.
Exécution du watch
Exécutez l'objectif watch avant l'objectif qui démarre l'application. Un projet archétype définit cela comme son objectif par défaut, donc mvn sans arguments exécute les deux :
mvn compile webforj:watch spring-boot:run
mvn compile webforj:watch jetty:run
Pour exécuter le watch en tant qu'étape de construction autonome, voir Construction et tests.
Comment la sortie s'applique
L'action du navigateur dépend de la sortie produite, pas du fichier modifié :
| Sortie | Action du navigateur |
|---|---|
Feuille de style, à partir d'une source .css, .scss, .sass ou .less | Appliquée sur place. Pas de rechargement, les données de formulaire et la position de défilement restent. |
| Image | Échangée sur place. Pas de rechargement. |
Toute autre sortie, comme les fichiers compilés .ts, .tsx ou .js | La vue se recharge. |
Lorsque une reconstruction produit plusieurs fichiers, le navigateur les applique sur place uniquement si chaque fichier est valide. Sinon, il se recharge une fois, donc un changement ne s'applique jamais partiellement.
Pendant un redémarrage du serveur
Un changement Java sans outil de hotswap redémarre le serveur. Lors du redémarrage :
- Les styles appliqués restent sur la page.
- Un indicateur s'affiche pendant que le serveur est hors ligne. Il apparaît uniquement pour un redémarrage, pas pour un rechargement manuel.
- La page se recharge lorsque l'application est prête, pas avant.
Un ajout ou une suppression de @BundleEntry prend effet lorsque ce redémarrage est terminé.