Annevd / choices-choices-the-tech-stack

Kies een andere tech-stack voor het ontwerpen en bouwen van een website voor een opdrachtgever
https://bieb-in-bloei-astro.netlify.app/stekjes
0 stars 0 forks source link

Implementeer componenten #5

Closed Annevd closed 5 days ago

Annevd commented 5 days ago

Componenten implementeren met Astro

Zoals je in de mappenstructuur bij de installatie al kon zien, zet je je componenten in de components folder in de src. Binnen deze folder, kan je je componenten ook weer ordenen op bijvoorbeeld atoms, molecules en organisms zoals dit:

image

In die component folders maak je een component aan door het een naam te geven met een hoofdletter, en er .astro achter te zetten:

image

Astro maakt gebruik van frontmatter:

"Frontmatter is a section at the top of Astro components and Markdown/MDX files, enclosed by two code fences ( --- ). Frontmatter in Astro components is the component script."

Om de componenten te gebruiken kun je deze in de frontmatter van je pagina (in pages) importeren:

---
import HeroHeaders from '../components/molecules/HeroHeaders.astro';
import IntroHeaders from '../components/atoms/IntroHeaders.astro';
import OverViewPages from '../components/molecules/OverViewPages.astro';
---

Je hebt hiervoor geen extra index.js nodig zoals in Sveltekit.

Om ze vervolgens in je pagina's te gebruiken doe je hetzelfde als in Sveltekit:

<BaseLayout>

    <HeroHeaders />
    <IntroHeaders />
    <OverViewPages />

</BaseLayout>

Bronnen

Commits