I componenti permettono di riutilizzare un elemento UI o altro ripetutamente.
Degli esempi potrebbero essere delle sezioni di link o un video YouTube integrato.
Starlight supporta l’utilizzo di questi nei file MDX e fornisce dei componenti per te già pronti.
Puoi usare un componente importandolo nel tuo file MDX e poi visualizzarlo come un tag JSX.
Questi possono ricordare dei tag HTML ma iniziano con una maiuscola:
Starlight applica stili predefiniti al tuo contenuto Markdown, ad esempio aggiungendo margini tra gli elementi.
Se questi stili entrano in conflitto con l’aspetto del tuo componente, imposta la classe not-content sul tuo componente per disabilitarli.
Componenti integrati
Starlight fornisce dei componenti per casi comuni in una documentazione.
Questi sono disponibili nel pacchetto @astrojs/starlight/components.
Schede
Puoi rappresentare contenuti con un’interfaccia a schede con i componenti <Tabs> e <TabItem>.
Ogni <TabItem> deve avere un label per indicare la scheda corrispondente.
Puoi rappresentare i contenuti in un riquadro che rispecchia il tema Starlight usando il componente <Card>.
Racchiudi più card in <CardGrid> per visualizzarle fianco a fianco se c’è abbastanza spazio.
Una <Card> necessita di title e può avere eventualmente un attributo icon impostato ad una delle icone Starlight.
Il codice sopra genera quanto segue nella pagina:
Guarda qui
Contenuti interessanti da evidenziare.
Stelle
Sirius, Vega, Betelgeuse
Lune
Io, Europa, Ganymede
Card con link
Utilizza il componente <LinkCard> per collegare in modo visibile pagine diverse.
Una <LinkCard> richiede un title e un attributo href. Facoltativamente puoi includere una breve description o altri attributi del collegamento come target.
Raggruppa più componenti <LinkCard> in <CardGrid> per visualizzare le schede una accanto all’altra quando c’è spazio sufficiente.
Il codice sopra genera quanto segue nella pagina:
Personalizzazione di StarlightScopri come rendere il tuo sito Starlight unico con stili personalizzati, caratteri e altro.
Gli avvisi sono utili per indicare contenuti secondari insieme ai contenuti principali.
<Aside> può avere un type opzionale di note (il valore predefinito), tip, caution o danger. Impostando un attributo title si sovrascrive il titolo predefinito dell’avviso.
Il codice sopra genera quanto segue nella pagina:
Starlight fornisce anche una sintassi personalizzata per mostrare gli avvisi in Markdown e MDX come alternativa al componente <Aside>.
Consulta la guida “Creazione di contenuti in Markdown” per i dettagli sulla sintassi personalizzata.
Icone
Starlight fornisce una serie di icone comuni che puoi visualizzare nei tuoi contenuti utilizzando il componente <Icon>.
Ogni <Icon> richiede un name e può facoltativamente includere un attributo label, size e color.
Il codice sopra genera quanto segue nella pagina:
Tutte le icone
Di seguito è riportato un elenco di tutte le icone disponibili con i nomi associati. Fare clic su un’icona per copiarne il codice componente.
Codice
Utilizza il componente <Code> per visualizzare il codice sintatticamente evidenziato quando l’utilizzo di un blocco di codice Markdown non è possibile, ad esempio, per visualizzare dati provenienti da fonti esterne come file, database o API.
Consulta la documentazione completa del componente “Code Component” di Expressive Code per maggiori informazioni sulle proprietà supportate da <Code>.
Il codice sopra genera quanto segue nella pagina:
Codice Importato
Utilizza il suffisso ?raw dell’importazione con Vite per importare qualsiasi file di codice come stringa.
Poi puoi passare questa stringa importata al componente <Code> per includerla nella tua pagina.