Tento dokument byl přeložen pomocí AI. Pro přesné informace se podívejte na anglickou verzi.
RunJS podporuje syntaxi JSX, což vám umožňuje psát kód podobně jako komponenty Reactu. JSX je před spuštěním automaticky zkompilováno.
ctx.libs.React.createElement a ctx.libs.React.Fragment.ctx.libs.React.ctx.importAsync('react@x.x.x') se JSX přepne na použití metody createElement z této konkrétní instance.RunJS obsahuje vestavěný React a běžné UI knihovny. Můžete k nim přistupovat přímo přes ctx.libs bez použití import:
createRoot)Při přímém psaní JSX nemusíte React destrukturovat. Destrukturalizaci z ctx.libs potřebujete pouze při použití Hooků (jako useState, useEffect) nebo Fragmentu (<>...</>):
Poznámka: Vestavěný React a externí React importovaný přes ctx.importAsync() nelze kombinovat. Pokud používáte externí UI knihovnu, musí být React importován ze stejného externího zdroje.
Při načítání konkrétní verze Reactu a UI knihoven přes ctx.importAsync() bude JSX používat tuto instanci Reactu:
Pokud antd závisí na react/react-dom, můžete specifikovat stejnou verzi přes deps, abyste se vyhnuli více instancím:
Poznámka: Při použití externího Reactu musí být UI knihovny jako antd také importovány přes ctx.importAsync(). Nekombinujte je s ctx.libs.antd.
<Button type="primary">Text</Button><>...</> nebo <React.Fragment>...</React.Fragment> (při použití Fragmentu je nutná destrukturalizace const { React } = ctx.libs){výraz} pro vkládání proměnných nebo operací, například {ctx.user.name} nebo {count + 1}. Nepoužívejte šablonovou syntaxi {{ }}.{flag && <span>Obsah</span>} nebo {flag ? <A /> : <B />}array.map() pro vrácení seznamu prvků a zajistěte, aby každý prvek měl stabilní key.