@load Directive
The @load directive loads JSON data from src/data into the current template scope.
Basic usage
@load site
Loads:
src/data/site.json
Exposes:
{{ site.name }}
Alias usage
@load site as company
Exposes:
{{ company.name }}
Folder collection
@load posts
If src/data/posts is a folder, Curvea loads every .json file in that folder as an array.
Example:
@for post in posts
<h2>{{ post.title }}</h2>
@end
Wildcard folder map
@load settings/* as settings
Loads every .json file inside:
src/data/settings
and exposes an object map.
Example files:
src/data/settings/nav.json
src/data/settings/footer.json
Template:
{{ settings.nav.title }}
{{ settings.footer.copyright }}
Error behavior
Invalid JSON throws an error.
Missing data sources also throw errors when explicitly loaded.