Probabil că ar fi trebuit să învăț asta demult, dar, vai, iată-ne. Se pare că puteți spune ce funcție doriți să utilizeze JSX. Da, JSX are într-adevăr o singură transformare primară. Transformă parantezele unghiulare în JavaScript într-un apel funcțional. Deci, dacă scrieți o linie ca aceasta în JavaScript:
Hello
După procesare (probabil cu Babel și pluginul JSX), veți primi, în mod implicit:
React.createElement("div", ( class: "big" ), "Hello");
Dar dacă includeți un comentariu directiv care spune JSX că doriți să utilizați propria funcție, puteți modifica acea ieșire:
/* @jsx myFunction */ Hello
Se transformă în:
/* @jsx myFunction */ myFunction("div", ( class: "big" ), "Hello");
Asta înseamnă că ne putem scrie propria funcție. Cam ciudat, dar OK.
Cazul de utilizare real este pentru bibliotecile care nu reacționează, cum ar fi Preact. Am aflat acest lucru uitându-mă la exemplele lui Jason Miller:
Vue se poate face și în acest fel. Rețineți că atât Vue, cât și Preact livrează această h
funcție specială concepută pentru acest lucru:
Valeri Karpov are câteva cazuri de utilizare interesante la postarea lor pe blog, „O prezentare generală a JSX cu 3 exemple care nu reacționează”.