'use client' import {useState} from 'react' import Image from 'next/image' import {useRouter} from 'next/navigation' import {useForm} from 'react-hook-form' import {zodResolver} from '@hookform/resolvers/zod' import {z} from 'zod' import {toast} from 'sonner' import HomePage from '@/components/home/page' import Wrap from '@/components/wrap' import {Form, FormField} from '@/components/ui/form' import {Input} from '@/components/ui/input' import {Button} from '@/components/ui/button' import {Select, SelectContent, SelectItem, SelectTrigger, SelectValue} from '@/components/ui/select' import {merge} from '@/lib/utils' import {submitInquiry} from '@/actions/inquiry' import group from './_assets/Group.webp' import SelfDesc from '@/components/features/self-desc' const formSchema = z.object({ company: z.string().min(2, '企业名称至少2个字符'), name: z.string().min(2, '联系人姓名至少2个字符'), phone: z.string().regex(/^1[3-9]\d{9}$/, '请输入正确的11位手机号码'), usage: z.string().min(1, '请选择您需要的用量'), purpose: z.string().min(2, '请输入用途说明').max(200, '用途说明不超过200字符'), }) type FormValues = z.infer export default function CustomPage() { const router = useRouter() const [isSubmitting, setIsSubmitting] = useState(false) const form = useForm({ resolver: zodResolver(formSchema), defaultValues: { company: '', name: '', phone: '', usage: '', purpose: '', }, }) const onSubmit = async (data: FormValues) => { setIsSubmitting(true) try { const result = await submitInquiry(data) if (result.success) { toast.success('提交成功!我们的专属顾问会在24小时内联系您') form.reset() } else { toast.error(result.message || '提交失败,请稍后重试') } } catch (error) { toast.error('网络错误,请稍后重试') } finally { setIsSubmitting(false) } } const scrollToForm = () => { const formElement = document.getElementById('inquiry-form') if (formElement) { formElement.scrollIntoView({behavior: 'smooth', block: 'start'}) } } return ( {/* 1. 顶部介绍区 */} { document.getElementById('inquiry-form')?.scrollIntoView({behavior: 'smooth', block: 'start'}) }}/> {/* 2. 表单区 */}

业务定制

请填写您的企业信息,我们的专属顾问将在24小时内与您联系

{/* 企业名称 */} {({id, field}) => (
)}
{/* 联系人姓名 */} {({id, field}) => (
)}
{/* 联系人手机号码 */} {({id, field}) => (
)}
{/* 每月需求用量 */} {({id, field}) => (
)}
{/* 用途 */} {({id, field}) => (
)}
{/* 3. 底部引导区 */}
立即试用背景
现在注册,免费领取5000IP
) }