组件/Form 表单
通用组件

Form 表单

提供表单容器与校验能力,配合 `TxFormItem` 统一布局与提示。

该页面由 AI 迁移生成,请谨慎使用

内容已迁移完成,但仍建议结合源码和人工评审结果使用。

Form 表单

提供表单容器与校验能力,配合 TxFormItem 统一布局与提示。

基础用法

示例即将加载...
<script setup lang="ts">
import { reactive, ref } from 'vue'

const form = reactive({ name: '', email: '' })
const rules = { name: { required: true, message: '请输入名称' } }
const formRef = ref()

async function handleValidate() {
  await formRef.value?.validate()
}
</script>

<template>
  <TxForm ref="formRef" :model="form" :rules="rules" label-width="90px">
    <TxFormItem label="名称" prop="name">
      <TuffInput v-model="form.name" placeholder="请输入名称" />
    </TxFormItem>
    <TxFormItem label="邮箱" prop="email">
      <TuffInput v-model="form.email" placeholder="name@example.com" />
    </TxFormItem>
  </TxForm>
</template>

API

TxForm Props

属性名类型默认值说明
modelRecord<string, any>-表单数据
rulesFormRules-校验规则
labelPosition'left' | 'right' | 'top''left'标签位置
labelWidthstring | number-标签宽度
size'small' | 'medium' | 'large''medium'表单尺寸
disabledbooleanfalse禁用表单

TxForm Events

事件名参数说明
validate(valid: boolean)表单校验结果

TxFormItem Props

属性名类型默认值说明
labelstring''标签文本
propstring-对应字段
rulesFormRule | FormRule[]-自定义规则
requiredbooleanfalse是否必填
showMessagebooleantrue是否显示错误
inlinebooleanfalse内联布局

TxFormItem Events

事件名参数说明
validate(valid: boolean)单项校验结果

Expose

名称说明
validate()触发表单校验
resetFields()重置字段
clearValidate()清空错误