| // import React, { useState } from 'react'; |
| // import '../../pages/AuthPage/AuthPage.css'; |
| // import image from './logo.svg'; // 引入图片 |
| |
| // const Register = ({ onLoginClick }) => { |
| // const [formData, setFormData] = useState({ |
| // username: '', |
| // password: '', |
| // email: '' |
| // }); |
| // const [verificationCode, setVerificationCode] = useState(''); |
| |
| // const handleSubmit = async (e) => { |
| // e.preventDefault(); |
| // // 注册逻辑 |
| // }; |
| |
| // const verifyEmailCode = async () => { |
| // try { |
| // const response = await fetch('http://localhost:8080/user/verify-code', { |
| // method: 'POST', |
| // headers: { |
| // 'Content-Type': 'application/json', |
| // }, |
| // body: JSON.stringify({ |
| // email: formData.email, |
| // code: verificationCode, |
| // }), |
| // }); |
| |
| // const result = await response.json(); |
| // if (response.ok && result.code === "0") { |
| // console.log('邮箱验证成功:', result.msg); |
| // // 处理成功逻辑 |
| // } else { |
| // console.error('邮箱验证失败:', result.msg); |
| // // 处理失败逻辑 |
| // } |
| // } catch (error) { |
| // console.error('请求错误:', error); |
| // // 处理请求错误 |
| // } |
| // }; |
| |
| |
| // return ( |
| // <div className="auth-container"> |
| // <img |
| // src={image} |
| // alt="描述" |
| // style={{ width: '30%', height: 'auto'}} |
| // /> |
| // <div className="auth-form-section"> |
| // <h3>用户注册</h3> |
| // <form onSubmit={handleSubmit}> |
| // <div className="form-group"> |
| // <label>用户名</label> |
| // <input |
| // type="text" |
| // className="form-input" |
| // placeholder="请输入用户名" |
| // value={formData.username} |
| // onChange={(e) => setFormData({ ...formData, username: e.target.value })} |
| // required |
| // /> |
| // </div> |
| // <div className="form-group"> |
| // <label>密码</label> |
| // <input |
| // type="password" |
| // className="form-input" |
| // placeholder="请输入密码" |
| // value={formData.password} |
| // onChange={(e) => setFormData({ ...formData, password: e.target.value })} |
| // required |
| // /> |
| // </div> |
| // <div className="form-group"> |
| // <label>邮箱</label> |
| // <div style={{ display: 'flex', alignItems: 'center' }}> |
| // <input |
| // type="email" |
| // className="form-input" |
| // placeholder="请输入邮箱" |
| // value={formData.email} |
| // onChange={(e) => setFormData({ ...formData, email: e.target.value })} |
| // required |
| // style={{ flex: 1, marginRight: '10px' }} |
| // /> |
| // <button type="button" onClick={verifyEmailCode} className="verify-button"> |
| // 验证邮箱 |
| // </button> |
| // </div> |
| // </div> |
| // <div className="form-group"> |
| // <label>验证码</label> |
| // <input |
| // type="text" |
| // className="form-input" |
| // placeholder="请输入邮箱验证码" |
| // value={verificationCode} |
| // onChange={(e) => setVerificationCode(e.target.value)} |
| // required |
| // /> |
| // </div> |
| // <button type="submit" className="auth-button"> |
| // 注册 |
| // </button> |
| // <p className="login-link"> |
| // 已有账号? |
| // <button onClick={onLoginClick} className="link-button"> |
| // 点击登录 |
| // </button> |
| // </p> |
| // </form> |
| // </div> |
| // </div> |
| // ); |
| // }; |
| |
| // export default Register; |
| |
| // import React, { useState } from 'react'; |
| // import '../../pages/AuthPage/AuthPage.css'; |
| // import image from './logo.svg'; |
| |
| // const API_BASE = process.env.REACT_APP_API_BASE || '/echo'; |
| |
| // const Register = ({ onLoginClick }) => { |
| // const [formData, setFormData] = useState({ |
| // username: '', |
| // email: '', |
| // password: '', |
| // role: 'user', |
| // inviteCode: '' |
| // }); |
| // const [error, setError] = useState(''); |
| // const [isSubmitting, setIsSubmitting] = useState(false); |
| |
| // const handleSubmit = async (e) => { |
| // e.preventDefault(); |
| // setIsSubmitting(true); |
| // setError(''); |
| |
| // try { |
| // const response = await fetch(`/user/register`, { |
| // method: 'POST', |
| // headers: { |
| // 'Content-Type': 'application/json', |
| // }, |
| // body: JSON.stringify(formData), |
| // }); |
| |
| // const result = await response.json(); |
| |
| // if (!response.ok) { |
| // throw new Error(result.message || '注册失败'); |
| // } |
| |
| // console.log('注册成功:', result); |
| // // 这里可以添加注册成功后的跳转逻辑 |
| // alert('注册成功!'); |
| // } catch (error) { |
| // console.error('注册错误:', error); |
| // setError(error.message || '注册过程中出现错误'); |
| // } finally { |
| // setIsSubmitting(false); |
| // } |
| // }; |
| |
| // const handleChange = (e) => { |
| // const { name, value } = e.target; |
| // setFormData(prev => ({ ...prev, [name]: value })); |
| // }; |
| |
| // return ( |
| // <div className="auth-container"> |
| // <img |
| // src={image} |
| // alt="网站Logo" |
| // style={{ width: '30%', height: 'auto' }} |
| // /> |
| // <div className="auth-form-section"> |
| // <h3>用户注册</h3> |
| // {error && <div className="error-message">{error}</div>} |
| // <form onSubmit={handleSubmit}> |
| // <div className="form-group"> |
| // <label>用户名</label> |
| // <input |
| // type="text" |
| // name="username" |
| // className="form-input" |
| // placeholder="请输入用户名" |
| // value={formData.username} |
| // onChange={handleChange} |
| // required |
| // minLength="3" |
| // maxLength="20" |
| // /> |
| // </div> |
| // <div className="form-group"> |
| // <label>邮箱</label> |
| // <input |
| // type="email" |
| // name="email" |
| // className="form-input" |
| // placeholder="请输入邮箱" |
| // value={formData.email} |
| // onChange={handleChange} |
| // required |
| // /> |
| // </div> |
| // <div className="form-group"> |
| // <label>密码</label> |
| // <input |
| // type="password" |
| // name="password" |
| // className="form-input" |
| // placeholder="请输入密码" |
| // value={formData.password} |
| // onChange={handleChange} |
| // required |
| // minLength="6" |
| // /> |
| // </div> |
| // <div className="form-group"> |
| // <label>邀请码</label> |
| // <input |
| // type="text" |
| // name="inviteCode" |
| // className="form-input" |
| // placeholder="请输入邀请码" |
| // value={formData.inviteCode} |
| // onChange={handleChange} |
| // required |
| // /> |
| // </div> |
| // <button |
| // type="submit" |
| // className="auth-button" |
| // disabled={isSubmitting} |
| // > |
| // {isSubmitting ? '注册中...' : '注册'} |
| // </button> |
| // <p className="login-link"> |
| // 已有账号?{' '} |
| // <button |
| // type="button" |
| // onClick={onLoginClick} |
| // className="link-button" |
| // > |
| // 点击登录 |
| // </button> |
| // </p> |
| // </form> |
| // </div> |
| // </div> |
| // ); |
| // }; |
| |
| // export default Register; |