Il y a quelque temps nous avons décidé de migrer à React. Ce choix, qui n’a pas été immédiat, est le résultat d’une longue hésitation avec l’autre leader du marché qu’est Angular JS.
A l’époque, les points qui nous rebutaient le plus dans React étaient la syntaxe JSX et le fait de mélanger l’affichage et la logique du composant au sein d’un même fichier même si, en réalité, il s’avère que ce dernier point est plutôt pratique à l’usage.
Cependant, il reste certaines choses qui restent un peu fastidieuses, comme les conditions ou les boucles.
C’est là qu’intervient React Template, un moteur de template permettant d’écrire du JSX avec une syntaxe proche de celle utilisée dans Angular JS.
En effet, il suffira d’un attribut « rt-if » pour définir la condition d’affichage d’un élément, d’un « rt-repeat » pour répéter un élément selon une condition précise, etc…
Vous trouverez ci-dessous un exemple de template React:

Les templates peuvent se compiler simplement avec la majorité des task runner ou builder courants tels que Grunt, Gulp, Browserify ou Webpack.
De la compilation résulte un module javascript contenant une fonction destinée à remplacer la méthode render du composant. De ce fait, l’inconvénient, s’il en est, est que le template sera toujours séparé du composant.
En bref, React Template est une alternative intéressante au JSX et, même si la syntaxe peu déplaire pour ceux qui ont fuit Angular à cause de tout ces attributs ng-*, il prouve qu’il est possible de rendre l’écriture des composant React un peu plus pratique pour ceux qui ont peur de ne pas se faire au JSX !