|
1 | | -// 'use client'; |
2 | | - |
3 | | -// import { useState } from 'react'; |
4 | | - |
5 | | -// export default function Form() { |
6 | | -// const [name, setName] = useState(''); |
7 | | -// const [email, setEmail] = useState(''); |
8 | | -// const [message, setMessage] = useState(''); |
9 | | -// const [loading, setLoading] = useState(false); |
10 | | -// const [error, setError] = useState(''); |
11 | | - |
12 | | -// const handleSubmit = async (e: React.FormEvent) => { |
13 | | -// e.preventDefault(); |
14 | | -// setLoading(true); |
15 | | -// setMessage(''); |
16 | | -// setError(''); |
17 | | - |
18 | | -// try { |
19 | | -// const res = await fetch('/api/submit', { |
20 | | -// method: 'POST', |
21 | | -// headers: { 'Content-Type': 'application/json' }, |
22 | | -// body: JSON.stringify({ name, email }), |
23 | | -// }); |
24 | | - |
25 | | -// if (!res.ok) throw new Error('Failed to submit'); |
26 | | -// const data = await res.json(); |
27 | | -// setMessage(data.message); |
28 | | -// } catch { |
29 | | -// setError('Submission failed. Please try again.'); |
30 | | -// } finally { |
31 | | -// setLoading(false); |
32 | | -// } |
33 | | -// }; |
34 | | - |
35 | | -// const handleReset = () => { |
36 | | -// setName(''); |
37 | | -// setEmail(''); |
38 | | -// setMessage(''); |
39 | | -// setError(''); |
40 | | -// }; |
41 | | - |
42 | | -// return ( |
43 | | -// <div> |
44 | | -// <h1>Form Page</h1> |
45 | | -// <form onSubmit={handleSubmit}> |
46 | | -// <input |
47 | | -// type="text" |
48 | | -// placeholder="Enter your name" |
49 | | -// value={name} |
50 | | -// onChange={(e) => setName(e.target.value)} |
51 | | -// /> |
52 | | -// <input |
53 | | -// type="email" |
54 | | -// placeholder="Enter your email" |
55 | | -// value={email} |
56 | | -// onChange={(e) => setEmail(e.target.value)} |
57 | | -// /> |
58 | | -// <button type="submit" disabled={loading}> |
59 | | -// {loading ? 'Submitting...' : 'Submit'} |
60 | | -// </button> |
61 | | -// <button type="button" onClick={handleReset}>Reset</button> |
62 | | -// </form> |
63 | | -// {message && <p style={{ color: 'green' }}>{message}</p>} |
64 | | -// {error && <p style={{ color: 'red' }}>{error}</p>} |
65 | | -// </div> |
66 | | -// ); |
67 | | -// } |
68 | 1 |
|
69 | 2 |
|
70 | 3 | 'use client'; |
|
0 commit comments