Skip to content

Interface: ComponentContext<C, K>

API / @xmachines/play-react / ComponentContext

Defined in: @json-render/react

Context passed to component render functions

Example

const Button: ComponentFn<typeof catalog, 'Button'> = (ctx) => {
return <button onClick={() => ctx.emit("press")}>{ctx.props.label}</button>
}

Extends

  • BaseComponentProps<InferComponentProps<C, K>>

Type Parameters

Type Parameter
C extends Catalog
K extends keyof InferCatalogComponents<C>

Properties

PropertyTypeDescriptionInherited fromDefined in
bindings?Record<string, string>Two-way binding paths resolved from $bindState / $bindItem expressions. Maps prop name → absolute state path for write-back.BaseComponentProps.bindings-
children?ReactNode-BaseComponentProps.children-
emit(event) => voidSimple event emitter (shorthand). Fires the event and returns void.BaseComponentProps.emit-
loading?boolean-BaseComponentProps.loading-
on(event) => EventHandleGet an event handle with metadata. Use when you need shouldPreventDefault or bound checks.BaseComponentProps.on-
propsInferComponentProps-BaseComponentProps.props-