Skip to content

API Overview

Public entries

EntryMain exports
@formxjs/coreFormXEngine, ResourceManager, schema types, rule types, validation types.
@formxjs/ui-coreFormView, FieldView, ContainerView, FieldGroupView.
@formxjs/vue-coreuseFormXEngine, useFormViewState, exposed form helpers.
@formxjs/vue-epFormXVueEp, Element Plus skin styles.
@formxjs/vueRecommended Vue entry for applications.

Engine

ts
const engine = new FormXEngine({
  schema,
  performance: { useGraph: 'auto' },
  policy: { validation: { mode: 'touched' } }
})

Common methods:

ts
engine.dispatch('init')
engine.setValue('path.to.field', value)
engine.getValues()
engine.getSubmitValues()
engine.validate()
engine.validatePath('email')
engine.getErrors()
engine.getDiagnostics()

ResourceManager

ts
ResourceManager.register('getUsers', async (params) => api.users(params))
const users = await ResourceManager.fetch('getUsers', { keyword: 'tom' })
ResourceManager.invalidate('getUsers')

Vue component methods

ts
await formRef.value?.validate()
formRef.value?.resetFields()
formRef.value?.setValues(values, { replace: true })
formRef.value?.getValues()
formRef.value?.getSubmitValues()
formRef.value?.getErrors()
formRef.value?.getFirstErrorPath()
formRef.value?.getFieldGroupAPI('rules')

Last updated: