Skip to content

Function: useBaseHooks()

ts
function useBaseHooks<Props>(
  emit: (...args: any[]) => void,
  props: Props,
  attrs: Record<string, unknown>,
): {
  onClickAppendInner: (...args: any[]) => Promise<void>;
  onClickClear: (...args: any[]) => Promise<void>;
  onClickControl: (...args: any[]) => Promise<void>;
  onClickPrependInner: (...args: any[]) => Promise<void>;
  onMousedownControl: (...args: any[]) => Promise<void>;
  onUpdateFocused: (...args: any[]) => Promise<void>;
  onUpdateModelValue: (...args: any[]) => Promise<void>;
};

Composable that creates passthrough hooks for all BaseField events. Integrates with component props (onX handlers) and hook arrays (callOnX) to handle events.

Type Parameters

Type ParameterDescription
Props extends ResolvedBasePropsThe resolved base props type

Parameters

ParameterTypeDescription
emit(...args: any[]) => voidThe Vue component emit function
propsPropsThe component props
attrsRecord<string, unknown>The component attributes

Returns

ts
{
  onClickAppendInner: (...args: any[]) => Promise<void>;
  onClickClear: (...args: any[]) => Promise<void>;
  onClickControl: (...args: any[]) => Promise<void>;
  onClickPrependInner: (...args: any[]) => Promise<void>;
  onMousedownControl: (...args: any[]) => Promise<void>;
  onUpdateFocused: (...args: any[]) => Promise<void>;
  onUpdateModelValue: (...args: any[]) => Promise<void>;
}

An object with handlers for all BaseField events

NameType
onClickAppendInner()(...args: any[]) => Promise<void>
onClickClear()(...args: any[]) => Promise<void>
onClickControl()(...args: any[]) => Promise<void>
onClickPrependInner()(...args: any[]) => Promise<void>
onMousedownControl()(...args: any[]) => Promise<void>
onUpdateFocused()(...args: any[]) => Promise<void>
onUpdateModelValue()(...args: any[]) => Promise<void>

Example

typescript
const hooks = useBaseHooks(emit, props, attrs);
// Handlers: onClickClear, onClickAppendInner, onClickPrependInner,
//           onClickControl, onMousedownControl, onUpdateFocused, onUpdateModelValue