DOI自动补全 · 三种引用格式 · 标签管理 · 真实调试记录
作为一个研究生,我读了几十篇文献,信息散落在Word、Zotero、浏览器书签里。写论文时找一篇文献的完整信息要翻半天,排版引用格式更是折磨。我试了下用MonkeyCode做一个参考文献管理器,整个过程记录下来分享给大家。
一、我的操作过程
1. 输入需求
我打开MonkeyCode控制台,在输入框里写了详细的需求,包括功能列表(DOI补全、引用格式转换、标签管理、搜索等)、界面配色(深蓝学术风)和技术要求(纯前端单文件+localStorage)。

2. 执行和等待
点了执行之后,AI开始分析需求并生成代码。从思考过程能看到它在拆解需求,执行步骤显示"创建论文参考文献管理器单文件HTML应用",大概3分钟就跑完了。


3. 预览效果
点预览→访问,打开成品页面。深蓝色学术风格的主界面,顶部有文献统计,左侧有状态筛选,搜索栏、导出按钮都有。

4. DOI自动补全------这个真好用
我点"添加文献",在DOI框里输入了 10.1038/s41586-021-03819-2(AlphaFold那篇Nature),点"自动获取",3秒就自动填好了标题、作者、期刊、年份、卷期页码。手动输入这些至少要两三分钟,还容易打错。


二、踩坑:保存后标题变空了
保存文献后发现标题变成了"(无标题)",点引用按钮生成的引用也是空的。其他字段倒都正常。这是个真实的bug。
我没有自己改代码,而是回到MonkeyCode任务页面,直接把bug现象描述了一下发给它:"文献保存后标题字段变成了空值,其他字段都正常。请检查保存逻辑,修复标题字段未正确保存的问题。"

AI读取了自己的源码,很快定位到根因:表单的input元素只有id属性,没有name属性,而保存函数用formData.get()读取数据时依赖的是name属性,所以读出来全是null。

然后它给10个表单字段都加上了name属性,整个过程大概35秒。

三、修复后的效果
重新打开预览,这次添加文献保存后标题正常显示了。点引用按钮,三种格式都正确生成了:

**APA:**Jumper, J., Evans, R., ... (2021). Highly accurate protein structure prediction with AlphaFold. Nature, 596(7873): 583-589.

**GB/T 7714:**JUMPER J, EVANS R, et al. Highly accurate protein structure prediction with AlphaFoldJ. Nature, 2021, 596(7873): 583-589.
搜索功能也正常,输入"AlphaFold"马上过滤出对应文献。

四、几点使用心得
**1. 需求写得越具体越好。**我把功能、配色、技术栈都写清楚了,AI一次就生成了大部分功能。
**2. DOI补全效率很高。**CrossRef API覆盖大部分学术期刊,3秒填完一篇文献信息,比手动快太多。
**3. 遇到bug直接告诉AI。**描述清楚现象就行,AI能读自己的代码、定位根因、修改、重新预览,比手动调试快一个数量级。
**4. 引用格式直接复制。**中文期刊用GB/T 7714,英文期刊用APA或Vancouver,生成后一键复制。
五、踩过的坑
标题保存变空
根因是表单input缺少name属性,formData.get()依赖name所以返回null。解决方法是直接把bug现象描述给MonkeyCode,它35秒就修好了。教训是:别自己改代码,让AI修自己的bug。
最后附上完整的ai使用提示词:
做一个"论文参考文献管理器"网页,要求:
1. 功能设计:
- 添加文献:支持手动录入(标题、作者、期刊、年份、卷期页码、DOI)
- DOI智能补全:输入DOI后点击"自动获取",调用 CrossRef API 自动填充标题、作者、期刊、年份等信息
- 引用格式转换:支持 APA、GB/T 7714、Vancouver 三种格式一键生成,可一键复制
- 文献分类:用标签管理(如"森林生态""多样性""方法学"),支持多标签筛选
- 搜索:按标题/作者/DOI模糊搜索
- 阅读状态:未读/在读/已读三种状态标记
- 笔记:每条文献可添加阅读笔记
- 数据导出:导出全部文献为 JSON 和 CSV 格式
- 数据导入:支持导入 JSON 格式的文献库
2. 界面设计:
- 学术风格,主色用深蓝(#1a3a5c),辅色用暖灰(#e8e5e0)
- 左侧边栏:分类标签 + 筛选器
- 右侧主区:文献列表卡片 + 添加/编辑表单
- 顶部搜索栏 + 统计信息(总数/已读/未读)
- 响应式布局,桌面优先但手机可用
3. 技术要求:
- 纯HTML+CSS+JavaScript,单文件
- 数据存储用localStorage
- CrossRef API 调用用 fetch(注意 CORS)
- 引用格式生成在前端完成
- 无依赖,不使用外部库
以上为个人真实使用经验分享,仅供参考