import { useState } from "react"; import { AnimatePresence, motion } from "framer-motion"; import { getStaticImage } from "@/lib/utils"; import { Image } from "@/components"; export interface LetterToChenyunProps { /** 是否可见 */ visible?: boolean; /** 关闭回调 */ onClose?: () => void; /** 提交回调 */ onSubmit?: (values: string[]) => void; } /** * LetterToChenyun 组件 - 寄给陈云爷爷的信 * 包含飞入和放大动画 */ const LetterToChenyun = ({ visible = false, onClose, onSubmit, }: LetterToChenyunProps) => { // 下划线可填写内容 const [blankValues, setBlankValues] = useState([]); // 信件内容模板(根据设计稿) const letterContent = `敬爱的陈云爷爷: 您好! 我是____专业的学生。今天,我怀着崇敬又激动的心情,参观了位于上海市青浦区练塘镇的陈云纪念馆,学习了您“不唯上、不唯书、只唯____”的做事准则,还有“综合平衡”“人民至上”的经济思想。我深刻体会到,这些精神不仅是建设年代的智慧结晶,更是新时代指引我们前行的思想灯塔。 作为新时代大学生,我会在专业学习中____,像您当年练珠算、搞调查那样精益求精;未来无论从事什么工作,都要把服务群众____放在首位;面对困难时不退缩,像您当年稳定物价、推进实业那样,用____本领(结合所学专业)为国家发展贡献自己的力量! 站在新时代的起点,我一定以____为志向,勤学苦练,传承精神,让您的务实担当在青春里扎根,让奋斗在建设祖国的实践中绽放光彩!`; return ( {visible && ( <> {/* 遮罩层 */} {/* 信件容器 */}
e.stopPropagation()} > {/* 信纸背景 */} 信纸 {/* 标题 - 垂直显示在左侧 */}
寄给陈云爷爷的信
{/* 信件内容区域 */}
{(() => { let placeholderIndex = 0; return letterContent.split("\n").map((line, lineIndex) => { const segments = line.split("____"); return (
{segments.map((part, partIndex) => { const isLast = partIndex === segments.length - 1; if (isLast) { return ( {part} ); } const currentIndex = placeholderIndex++; return ( {part} { const next = [...blankValues]; next[currentIndex] = e.target.value; setBlankValues(next); }} /> ); })}
); }); })()}
{/* 笔的图片 */}
笔
{/* 提交按钮 */}
可提交状态 onSubmit?.(blankValues)} button />
{/* 寄信图标(可选,如果需要的话) */}
寄信
)}
); }; export default LetterToChenyun;