Spaces:
Sleeping
Sleeping
| import React from 'react'; | |
| import { useParams, useNavigate } from 'react-router-dom'; | |
| import Layout from '../components/Layout/Layout'; | |
| import Card, { CardHeader, CardContent } from '../components/common/Card'; | |
| import PromptGroupForm from '../components/PromptGroup/PromptGroupForm'; | |
| import { useApp } from '../contexts/AppContext'; | |
| const EditPromptGroupPage: React.FC = () => { | |
| const { id } = useParams<{ id: string }>(); | |
| const navigate = useNavigate(); | |
| const { promptGroups, updatePromptGroup } = useApp(); | |
| if (!id) { | |
| return <div>提示词组ID无效</div>; | |
| } | |
| const promptGroup = promptGroups.find(group => group._id === id); | |
| if (!promptGroup) { | |
| return ( | |
| <Layout title="未找到" showBackButton> | |
| <div className="ios-empty-state"> | |
| <h3 className="ios-empty-state-title">未找到提示词组</h3> | |
| <p className="ios-empty-state-text">该提示词组可能已被删除</p> | |
| </div> | |
| </Layout> | |
| ); | |
| } | |
| const handleSubmit = (promptGroupData: { name: string; description: string; category: string }) => { | |
| updatePromptGroup(promptGroup._id, promptGroupData); | |
| navigate(`/prompt-group/${promptGroup._id}`); | |
| }; | |
| return ( | |
| <Layout title="编辑提示词组" showBackButton> | |
| <Card> | |
| <CardHeader title={`编辑: ${promptGroup.name}`} /> | |
| <CardContent> | |
| <PromptGroupForm | |
| initialPromptGroup={promptGroup} | |
| onSubmit={handleSubmit} | |
| onCancel={() => navigate(`/prompt-group/${promptGroup._id}`)} | |
| /> | |
| </CardContent> | |
| </Card> | |
| </Layout> | |
| ); | |
| }; | |
| export default EditPromptGroupPage; |