blob: d98a449cdbffd0c68cb1d3e66398e7380332df60 [file] [log] [blame]
Krishya57cc17b2025-05-26 16:43:34 +08001// import React, { useState } from 'react';
2// import '../../pages/AuthPage/AuthPage.css';
3// import image from './logo.svg'; // 引入图片
Krishya75e43c02025-04-05 21:16:30 +08004
Krishya57cc17b2025-05-26 16:43:34 +08005// const Register = ({ onLoginClick }) => {
6// const [formData, setFormData] = useState({
7// username: '',
8// password: '',
9// email: ''
10// });
11// const [verificationCode, setVerificationCode] = useState('');
Krishya75e43c02025-04-05 21:16:30 +080012
Krishya57cc17b2025-05-26 16:43:34 +080013// const handleSubmit = async (e) => {
14// e.preventDefault();
15// // 注册逻辑
16// };
Krishya75e43c02025-04-05 21:16:30 +080017
Krishya57cc17b2025-05-26 16:43:34 +080018// const verifyEmailCode = async () => {
19// try {
20// const response = await fetch('http://localhost:8080/user/verify-code', {
21// method: 'POST',
22// headers: {
23// 'Content-Type': 'application/json',
24// },
25// body: JSON.stringify({
26// email: formData.email,
27// code: verificationCode,
28// }),
29// });
Krishya75e43c02025-04-05 21:16:30 +080030
Krishya57cc17b2025-05-26 16:43:34 +080031// const result = await response.json();
32// if (response.ok && result.code === "0") {
33// console.log('邮箱验证成功:', result.msg);
34// // 处理成功逻辑
35// } else {
36// console.error('邮箱验证失败:', result.msg);
37// // 处理失败逻辑
38// }
39// } catch (error) {
40// console.error('请求错误:', error);
41// // 处理请求错误
42// }
43// };
Krishya75e43c02025-04-05 21:16:30 +080044
45
Krishya57cc17b2025-05-26 16:43:34 +080046// return (
47// <div className="auth-container">
48// <img
49// src={image}
50// alt="描述"
51// style={{ width: '30%', height: 'auto'}}
52// />
53// <div className="auth-form-section">
54// <h3>用户注册</h3>
55// <form onSubmit={handleSubmit}>
56// <div className="form-group">
57// <label>用户名</label>
58// <input
59// type="text"
60// className="form-input"
61// placeholder="请输入用户名"
62// value={formData.username}
63// onChange={(e) => setFormData({ ...formData, username: e.target.value })}
64// required
65// />
66// </div>
67// <div className="form-group">
68// <label>密码</label>
69// <input
70// type="password"
71// className="form-input"
72// placeholder="请输入密码"
73// value={formData.password}
74// onChange={(e) => setFormData({ ...formData, password: e.target.value })}
75// required
76// />
77// </div>
78// <div className="form-group">
79// <label>邮箱</label>
80// <div style={{ display: 'flex', alignItems: 'center' }}>
81// <input
82// type="email"
83// className="form-input"
84// placeholder="请输入邮箱"
85// value={formData.email}
86// onChange={(e) => setFormData({ ...formData, email: e.target.value })}
87// required
88// style={{ flex: 1, marginRight: '10px' }}
89// />
90// <button type="button" onClick={verifyEmailCode} className="verify-button">
91// 验证邮箱
92// </button>
93// </div>
94// </div>
95// <div className="form-group">
96// <label>验证码</label>
97// <input
98// type="text"
99// className="form-input"
100// placeholder="请输入邮箱验证码"
101// value={verificationCode}
102// onChange={(e) => setVerificationCode(e.target.value)}
103// required
104// />
105// </div>
106// <button type="submit" className="auth-button">
107// 注册
108// </button>
109// <p className="login-link">
110// 已有账号?
111// <button onClick={onLoginClick} className="link-button">
112// 点击登录
113// </button>
114// </p>
115// </form>
116// </div>
117// </div>
118// );
119// };
Krishya75e43c02025-04-05 21:16:30 +0800120
Krishya57cc17b2025-05-26 16:43:34 +0800121// export default Register;
122
123// import React, { useState } from 'react';
124// import '../../pages/AuthPage/AuthPage.css';
125// import image from './logo.svg';
126
127// const API_BASE = process.env.REACT_APP_API_BASE || '/echo';
128
129// const Register = ({ onLoginClick }) => {
130// const [formData, setFormData] = useState({
131// username: '',
132// email: '',
133// password: '',
134// role: 'user',
135// inviteCode: ''
136// });
137// const [error, setError] = useState('');
138// const [isSubmitting, setIsSubmitting] = useState(false);
139
140// const handleSubmit = async (e) => {
141// e.preventDefault();
142// setIsSubmitting(true);
143// setError('');
144
145// try {
Krishya2283d882025-05-27 22:25:19 +0800146// const response = await fetch(`/user/register`, {
Krishya57cc17b2025-05-26 16:43:34 +0800147// method: 'POST',
148// headers: {
149// 'Content-Type': 'application/json',
150// },
151// body: JSON.stringify(formData),
152// });
153
154// const result = await response.json();
155
156// if (!response.ok) {
157// throw new Error(result.message || '注册失败');
158// }
159
160// console.log('注册成功:', result);
161// // 这里可以添加注册成功后的跳转逻辑
162// alert('注册成功!');
163// } catch (error) {
164// console.error('注册错误:', error);
165// setError(error.message || '注册过程中出现错误');
166// } finally {
167// setIsSubmitting(false);
168// }
169// };
170
171// const handleChange = (e) => {
172// const { name, value } = e.target;
173// setFormData(prev => ({ ...prev, [name]: value }));
174// };
175
176// return (
177// <div className="auth-container">
178// <img
179// src={image}
180// alt="网站Logo"
181// style={{ width: '30%', height: 'auto' }}
182// />
183// <div className="auth-form-section">
184// <h3>用户注册</h3>
185// {error && <div className="error-message">{error}</div>}
186// <form onSubmit={handleSubmit}>
187// <div className="form-group">
188// <label>用户名</label>
189// <input
190// type="text"
191// name="username"
192// className="form-input"
193// placeholder="请输入用户名"
194// value={formData.username}
195// onChange={handleChange}
196// required
197// minLength="3"
198// maxLength="20"
199// />
200// </div>
201// <div className="form-group">
202// <label>邮箱</label>
203// <input
204// type="email"
205// name="email"
206// className="form-input"
207// placeholder="请输入邮箱"
208// value={formData.email}
209// onChange={handleChange}
210// required
211// />
212// </div>
213// <div className="form-group">
214// <label>密码</label>
215// <input
216// type="password"
217// name="password"
218// className="form-input"
219// placeholder="请输入密码"
220// value={formData.password}
221// onChange={handleChange}
222// required
223// minLength="6"
224// />
225// </div>
226// <div className="form-group">
227// <label>邀请码</label>
228// <input
229// type="text"
230// name="inviteCode"
231// className="form-input"
232// placeholder="请输入邀请码"
233// value={formData.inviteCode}
234// onChange={handleChange}
235// required
236// />
237// </div>
238// <button
239// type="submit"
240// className="auth-button"
241// disabled={isSubmitting}
242// >
243// {isSubmitting ? '注册中...' : '注册'}
244// </button>
245// <p className="login-link">
246// 已有账号?{' '}
247// <button
248// type="button"
249// onClick={onLoginClick}
250// className="link-button"
251// >
252// 点击登录
253// </button>
254// </p>
255// </form>
256// </div>
257// </div>
258// );
259// };
260
261// export default Register;