import React, { useState } from 'react'; import { Prompt } from '../../types'; import Card, { CardHeader, CardContent, CardFooter } from '../common/Card'; import Button from '../common/Button'; import Modal, { ModalFooter, ModalButton } from '../common/Modal'; import { exportPrompt } from '../../utils/exportUtils'; interface PromptDetailProps { prompt: Prompt; onEdit: () => void; onDelete: () => void; onBack: () => void; } const PromptDetail: React.FC = ({ prompt, onEdit, onDelete, onBack }) => { const [showDeleteModal, setShowDeleteModal] = useState(false); const formatDate = (date: string | Date) => { const dateObj = typeof date === 'string' ? new Date(date) : date; return dateObj.toLocaleDateString('zh-CN', { year: 'numeric', month: 'long', day: 'numeric', hour: '2-digit', minute: '2-digit' }); }; const handleExport = () => { exportPrompt(prompt); }; const handleDelete = () => { setShowDeleteModal(true); }; const confirmDelete = () => { onDelete(); setShowDeleteModal(false); }; const handleCopy = () => { navigator.clipboard.writeText(prompt.content) .then(() => { alert('提示词内容已复制到剪贴板'); }) .catch(err => { console.error('复制失败:', err); alert('复制失败,请手动选择并复制'); }); }; return (
} > 返回 } />

提示词内容

{/* 添加最大高度和滚动 */}
              {prompt.content}
            
{prompt.tags.length > 0 && (

标签

{prompt.tags.map((tag) => (
{tag}
))}
)}

信息

创建时间

{formatDate(prompt.createdAt)}

更新时间

{formatDate(prompt.updatedAt)}

setShowDeleteModal(false)} title="删除提示词" footer={ setShowDeleteModal(false)} > 取消 删除 } >

您确定要删除这个提示词吗?

此操作不可撤销。

); }; export default PromptDetail;