Tikriausiai turėjau tai išmokti jau seniai, bet, deja, čia mes. Pasirodo, galite pasakyti, kokią funkciją norite naudoti JSX. Taip, JSX iš tikrųjų turi tik vieną pirminę transformaciją. „JavaScript“ kampinius skliaustus paverčia funkcijų iškvietimu. Taigi, jei parašysite tokią eilutę „JavaScript“:
Hello
Apdoroję (tikriausiai naudodami „Babel“ ir „JSX“ papildinį), pagal numatytuosius nustatymus gausite:
React.createElement("div", ( class: "big" ), "Hello");
Bet jei įtraukiate direktyvos komentarą, nurodantį JSX, kad norite naudoti savo funkciją, galite pakeisti tą išvestį:
/* @jsx myFunction */ Hello
Pasiverčia į:
/* @jsx myFunction */ myFunction("div", ( class: "big" ), "Hello");
Tai reiškia, kad mes galime parašyti savo funkciją. Kažkaip keista, bet gerai.
Faktinis naudojimo atvejis yra nereaguojančioms bibliotekoms, pvz., „Preact“. Tai sužinojau pažvelgęs į Jasono Millerio pavyzdžius:
„Vue“ galima padaryti ir tokiu būdu. Atkreipkite dėmesį, kad tiek „Vue“, tiek „Preact“ pateikia šią specialią tam skirtą h
funkciją:
Valeri Karpov taip pat pateikia keletą įdomių naudojimo atvejų savo tinklaraščio įraše „JSX apžvalga su 3 nereaguojančiais pavyzdžiais“.