When building an Astro website, you may need to share state across components. Astro recommends the use of Nano Stores for shared client storage.
Recipe
- Install Nano Stores:
- Create a store. In this example, the store tracks whether a dialog is open or not:
- Import and use the store in a
<script>
tag in the components that will share state.
The following Button
and Dialog
components each use the shared isOpen
state to control whether a particular <div>
is hidden or displayed:
Resources
Recipes