示例代码如下:
// 引入需要的依赖包 import { ref, reactive } from 'vue'; import { useForm } from '@/composables/useForm'; // 定义表单数据模型 const formModel = reactive({ name: '', age: '', gender: '', }); // 使用自定义的useForm函数创建表单实例 const { register, validate, resetFields } = useForm(formModel); // 注册表单字段 register('name', { required: true, message: '请输入姓名' }); register('age', { required: true, message: '请输入年龄', type: 'number', min: 18, max: 60 }); register('gender', { required: true, message: '请选择性别' }); // 提交表单 const onSubmit = () => { if (validate()) { console.log('表单验证通过,提交数据:', formModel); resetFields(); } else { console.log('表单验证失败'); } }; // 重置表单 const onReset = () => { resetFields(); }; // 导出组件选项 export default { setup() { return { formModel, register, validate, onSubmit, onReset, }; }, };
在这段代码中,我们首先引入了ref
和reactive
函数以及useForm
函数。然后定义了一个表单数据模型formModel
,并使用useForm
函数创建了一个表单实例。接着注册了表单字段,并对每个字段进行了一些基本的验证规则设置。最后,我们定义了提交表单和重置表单的方法,并在组件中使用这些方法。