This commit is contained in:
LazuliKao 2024-09-24 21:21:51 +08:00
parent 805e7869fc
commit 4b7923c997
4 changed files with 62 additions and 60 deletions

View file

@ -5,6 +5,6 @@ import ReactChild from "./react/join.tsx";
<BaseLayout title="加入我们">
<main>
<ReactChild />
<ReactChild client:load />
</main>
</BaseLayout>

View file

@ -5,6 +5,6 @@ import ReactChild from "./react/list.tsx";
<BaseLayout title="加入我们">
<main>
<ReactChild />
<ReactChild client:load />
</main>
</BaseLayout>

View file

@ -12,7 +12,6 @@ export default function JoinForm() {
qq: "",
email: "",
})
const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
const { name, value } = e.target
setFormData(prevData => ({
@ -20,71 +19,78 @@ export default function JoinForm() {
[name]: value,
}))
}
const handleSubmit = async () => {
try {
await activeClient.freshman.postFreshmanAdd({
requestBody: formData,
})
alert("Form submitted successfully!")
alert("提交成功! 后续请加群获取!")
}
catch (error) {
console.error("Error submitting form:", error)
alert("Failed to submit form.")
}
}
return (
<div>
<Card>
<CardBody>
<Input
name="name"
placeholder="姓名"
value={formData.name}
onChange={handleChange}
/>
<Input
name="class"
placeholder="班级"
value={formData.class}
onChange={handleChange}
/>
<Input
name="number"
placeholder="学号"
value={formData.number}
onChange={handleChange}
/>
<Input
name="major"
placeholder="专业"
value={formData.major}
onChange={handleChange}
/>
<Input
name="phone"
placeholder="电话"
value={formData.phone}
onChange={handleChange}
/>
<Input
name="qq"
placeholder="QQ"
value={formData.qq}
onChange={handleChange}
/>
<Input
name="email"
placeholder="邮箱"
value={formData.email}
onChange={handleChange}
/>
</CardBody>
<CardFooter>
<Button onClick={handleSubmit}></Button>
</CardFooter>
</Card>
<form>
<Card>
<CardBody>
<Input
name="name"
placeholder="姓名"
value={formData.name}
onChange={handleChange}
required
/>
<Input
name="class"
placeholder="班级"
value={formData.class}
onChange={handleChange}
required
/>
<Input
name="number"
placeholder="学号"
value={formData.number}
onChange={handleChange}
required
/>
<Input
name="major"
placeholder="专业"
value={formData.major}
onChange={handleChange}
required
/>
<Input
name="phone"
placeholder="电话"
value={formData.phone}
onChange={handleChange}
required
/>
<Input
name="qq"
placeholder="QQ"
value={formData.qq}
onChange={handleChange}
required
/>
<Input
name="email"
placeholder="邮箱"
value={formData.email}
onChange={handleChange}
required
/>
</CardBody>
<CardFooter>
<Button onClick={handleSubmit}></Button>
</CardFooter>
</Card>
</form>
</div>
)
}

View file

@ -18,7 +18,7 @@ const FreshmanList = () => {
list: [],
total: 0,
})
const [currentPage, setCurrentPage] = useState(0)
const [currentPage] = useState(1) // setCurrentPage
useEffect(() => {
const fetchFreshmen = async () => {
const result = await activeClient.freshman.getFreshmanList({
@ -28,13 +28,9 @@ const FreshmanList = () => {
}
fetchFreshmen()
}, [])
setTimeout(() => {
setCurrentPage(1)
}, 1000)
return (
<div>
<Card>
{JSON.stringify(freshmen)}
<CardBody>
{freshmen.list.map(freshman => (
<div key={freshman.number}>