/// import { recipe, UI } from "commontools"; interface Tag { id: number; name: string; } interface Item { id: number; name: string; tags: Tag[]; } interface State { items: Item[]; prefix: string; } export default recipe("NestedCallback", (state) => { return { [UI]: (
{/* Outer map captures state.prefix, inner map closes over item from outer callback */} {state.items.map((item) => (
{state.prefix}: {item.name}
    {item.tags.map((tag) => (
  • {item.name} - {tag.name}
  • ))}
))}
), }; });