'use client'; import ProfileLayout from '@/layout/ProfileLayout'; import { Input } from '@/components/ui/input'; import { useState } from 'react'; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '@/components/ui/select'; import { Button } from '@/components/ui/button'; import { useRouter } from 'next/navigation'; import z from 'zod'; import { useForm } from 'react-hook-form'; import { zodResolver } from '@hookform/resolvers/zod'; import { useAsyncFn } from '@/hooks/tools'; import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage, } from '@/components/ui/form'; export default function CreateGroupPage() { const router = useRouter(); const schema = z.object({ nickname: z .string() .trim() .min(1, 'Group nickname is required') .min(2, 'Group nickname must be at least 2 characters'), worldGuide: z.string().trim().min(1, 'World guide is required'), }); const form = useForm({ resolver: zodResolver(schema), defaultValues: {}, mode: 'onChange', }); const { formState: { isValid, isDirty }, } = form; const { run: onSubmitFn, loading } = useAsyncFn(async (data: any) => { console.log('data', data); }); return (
{/* 昵称字段 */} ( Group Nickname )} /> ( World Guide )} />
); }