Repeaters
A Repeater repeats the blocks inside it once per item of a list. Nest any blocks, rows and cards; nest repeaters inside repeaters.
Setting one up
- Drag a Repeater onto the page.
- Pick the list in For each item in (e.g.
portfolio.holdings). - Choose an item name (default
item, e.g.holding). - Drop blocks inside and bind them with the item name:
{{ holding.name }},holding.value | currency.
Inside the repeater the data picker shows the item's fields under Current item, plus index, first, last and count.
Options
| Option | Effect |
|---|---|
| Keep each item on one page | Items never split across pages (unless taller than a page). On by default. |
| Divider between items | Thin rule between iterations. |
| Gap between items | Overrides the document block gap. |
| Maximum items | Caps the iterations. |
| Message when empty | Shown instead of nothing when the list is empty. |
Across pages
Repeaters are the classic place where report tools fall apart. BroadPaper expands the repeater into real nodes before pagination, so the paginator sees each iteration as a keep-together group: an item that does not fit moves whole to the next page; an item taller than a page splits at a valid point inside it. Headings before a repeater stay with the first item.
Design mode
The canvas shows one representative iteration (the first sample item) with a badge such as Repeats for each of 7 · Portfolio › Holdings, so designers can see structure without a wall of repeated content. Preview mode shows every item.
Limits
A hard cap of 5,000 iterations per repeater protects the browser; the resolver emits a warning when it truncates. For very long lists prefer a table, which renders and paginates far more cheaply.