Dans un environnement Spring Boot + Thymeleaf, plusieurs personnes peuvent développer le front-end, C'est un mémo que lorsque la même structure et la même conception apparaissent souvent, il y avait un tel problème et il a été résolu. (Même si quelqu'un prend le relais, cela peut être une fourmi pour en faire une partie commune)
Spring Boot: 1.3.2 RELEASE Thymeleaf: 2.14 RELEASE
C'est l'un des moteurs de modèles et il est recommandé pour une utilisation dans un environnement Java. Ce que j'aime, c'est que vous pouvez intégrer la propre syntaxe de Thymeleaf dans HTML. Écrivez d'abord du HTML natif, déterminez grossièrement la structure et la conception, et ne cassez pas trop le code Vous pouvez le compléter. (Je n'ai jamais utilisé aucun autre moteur de template ... c'est peut-être ce que le monde veut dire) On dit que vous pouvez faire diverses choses (bien que ce soit approximatif) en le combinant avec Spring Boot. Site officiel: http://www.thymeleaf.org/
En fait, c'était il y a un peu moins de deux ans, et je suis récemment revenu au front-end et je m'en suis souvenu, alors je l'ai écrit. A cette époque, en plein développement, j'avais les problèmes suivants.
De la conclusion, je vais faire comme ça (j'omettrai la syntaxe de Thymeleaf).
Votre interlocuteur
<!-- form.texte en html-Appelez une partie appelée formulaire.
En tant qu'argument, templateId, label,Passe requis.
templateId"accountName"Passez la chaîne de caractères.
l'étiquette est msg dans la ressource de message.account.Passez la chaîne définie dans nom.
Passez faux pour obligatoire-->
<div th:replace="form :: text-form(
templateId = 'accountName',
label = #{msg.account.name},
required = false)">
</div>
Parties communes
<!-- text-C'est une partie nommée forme.
En tant qu'argument, templateId, label,Recevoir requis.-->
<div th:fragment="text-form(templateId, label, required)">
<label th:for="${templateId}" th:text="${label}"></label>
<div>
<input type="text" th:id="${templateId}" th:name="${templateId}" th:field="*{__${templateId}__}"
th:required="${required}? required"/>
</div>
</div>
En fait, il existe une application de classe CSS et un appel Javascript, ce qui complique les choses, mais si vous définissez des parties communes, Vous pouvez créer efficacement une structure avec une conception unifiée simplement en transmettant les paramètres nécessaires aux pièces nécessaires et en les appelant.
Nous avons pu unifier la conception, développer efficacement des modèles d'écran et les publier comme prévu. Cependant, à mesure que le développement progressait, les problèmes suivants se sont posés.
Recommended Posts