[{"data":1,"prerenderedAt":212},["ShallowReactive",2],{"content:\u002Fposts\u002F2025\u002Fwhy-migrate-to-nuxt":3,"surround:\u002Fposts\u002F2025\u002Fwhy-migrate-to-nuxt":201},{"id":4,"title":5,"body":6,"canonical":177,"categories":178,"date":180,"description":181,"draft":182,"extension":183,"image":184,"meta":185,"navigation":186,"path":187,"permalink":177,"readingTime":188,"recommend":177,"references":177,"seo":193,"sitemap":194,"stem":195,"tags":196,"type":198,"updated":199,"__hash__":200},"content\u002Fposts\u002F2025\u002Fwhy-migrate-to-nuxt.md","本站为什么要从 Hexo 迁移到 Nuxt",{"type":7,"value":8,"toc":163},"minimark",[9,13,18,28,32,46,49,52,56,67,72,76,146,152],[10,11,12],"p",{},"从12月份开始翻译一些技术文章开始，之前使用的Hexo-Stellar-theme主题就开始变的力不从心了。主要是由于Hexo的原因，一些现代的代码高亮插件无法使用。而当前使用的主题和Hexo版本相比，有以下的对比：",[14,15,17],"h2",{"id":16},"hexo版本的优点","Hexo版本的优点",[19,20,21,25],"ol",{},[22,23,24],"li",{},"配置简单，部署方便",[22,26,27],{},"主题丰富，并且当前使用的主题Stellar功能强大",[14,29,31],{"id":30},"nuxt版本的优点","Nuxt版本的优点",[19,33,34,37,40,43],{},[22,35,36],{},"基本复刻了Stellar的部分样式，美观大气，对我来说基本够用",[22,38,39],{},"支持更加友好的代码高亮",[22,41,42],{},"使用Nuxt3，我比较熟悉",[22,44,45],{},"对于前端程序员来说，更加好的是可以快速的按需求更新更多页面。对比 hexo 需要使用 ejs 来扩展，Nuxt 扩展新功能是太方便了。",[10,47,48],{},"由于我写的大部分文章都是技术相关的，所以良好的代码高亮的支持对我来说是很有必要的，之前使用的主题虽然支持代码高亮，但是效果并不理想，而且Nuxt3版本在想要改动一些样式的时候更加方便。所以决定迁移到Nuxt。",[10,50,51],{},"至于部署的问题，在工作中我已经积累了一些经验，所以迁移到Nuxt之后，部署的问题应该不是问题。",[14,53,55],{"id":54},"_20250618升级至-nuxt-content-v3","【2025\u002F06\u002F18】升级至 Nuxt Content v3",[10,57,58,59,66],{},"Nuxt Content v3 发布已经有一段时间了。",[60,61,65],"a",{"href":62,"rel":63},"https:\u002F\u002Fblog.zhilu.site",[64],"nofollow","纸鹿","兄好像并没有升级的打算，我自己就在他的博客模板上升级了。",[68,69,71],"h3",{"id":70},"以下是遇到的一些坑可能会对你有帮助","以下是遇到的一些坑，可能会对你有帮助：",[73,74,75],"h4",{"id":75},"迁移需要注意",[19,77,78,86,93,101,113,120,130,140],{},[22,79,80,81,85],{},"nuxt.config.ts 中的 ",[82,83,84],"code",{"code":84},"content"," 配置需要修改",[22,87,88,89,92],{},"你需要构建一个 ",[82,90,91],{"code":91},"content.config.ts"," 文件，这个文件是 Nuxt Content v3 的配置文件，里面需要配置你的内容目录和数据结构",[22,94,95,96],{},"查询部分都发生了改变，你需要查看",[60,97,100],{"href":98,"rel":99},"https:\u002F\u002Fcontent.nuxt.com\u002Fdocs\u002Fgetting-started\u002Fmigration",[64],"官方迁移指南",[22,102,103,104,107,108],{},"search部分全部改变，使用 ",[82,105,106],{"code":106},"queryCollectionSearchSections"," 来查询指定的集合，你可以查看",[60,109,112],{"href":110,"rel":111},"https:\u002F\u002Fcontent.nuxt.com\u002Fdocs\u002Fadvanced\u002Ffulltext-search#minisearch-example",[64],"全文搜索",[22,114,115,116,119],{},"文章的查询需要使用 ",[82,117,118],{"code":118},"queryCollection"," 来查询指定的集合",[22,121,122,125,126,129],{},[82,123,124],{"code":124},"findSurround"," 废弃，你可以使用 ",[82,127,128],{"code":128},"queryCollectionItemSurroundings"," 替代，官方迁移指南中有说明",[22,131,132,135,136,139],{},[82,133,134],{"code":134},"ContentRendererMarkdown"," 组件废弃，你可以使用 ",[82,137,138],{"code":138},"ContentRenderer"," 替代，参数无需改动",[22,141,142,143,145],{},"ContentRenderer 内部的渲染组件需要移至 ",[82,144,138],{"code":138}," 组件外",[73,147,149],{"id":148},"部署部分的问题",[150,151,148],"strong",{},[19,153,154,157,160],{},[22,155,156],{},"GitHub Actions部署后报错，需要检查你的 Nodejs 版本，在 GitHub Actions 和服务器的 Node 版本都应该为最新的长期支持版（我使用的是 22.x版本）",[22,158,159],{},"在服务器上，你可能遇到服务启动了但是数据查不到，这时候你可以停止一下服务，删除所有文件并重新发布",[22,161,162],{},"本地可能没有 better-sqlite3 的依赖，你需要在项目中手动安装它",{"title":164,"searchDepth":165,"depth":165,"links":166},"",4,[167,169,170],{"id":16,"depth":168,"text":17},2,{"id":30,"depth":168,"text":31},{"id":54,"depth":168,"text":55,"children":171},[172],{"id":70,"depth":173,"text":71,"children":174},3,[175,176],{"id":75,"depth":165,"text":75},{"id":148,"depth":165,"text":148},null,[179],"代码","2025-01-06 16:38:36","本文讨论一下我为什么要把博客从Hexo迁移到Nuxt",false,"md","https:\u002F\u002Fbitmc.uno\u002Fpicgo\u002Fwhy-migrate-to-nuxt.jpg",{},true,"\u002Fposts\u002F2025\u002Fwhy-migrate-to-nuxt",{"text":189,"minutes":190,"time":191,"words":192},"4 min read",3.465,207900,693,{"title":5,"description":181},{"loc":187},"posts\u002F2025\u002Fwhy-migrate-to-nuxt",[197],"Nuxt","story","2025-06-18 10:00:00","KZHV7-Z1Rz11wpckGK_3cygbQmmbbzdNd8cJHem5xuU",[202,207],{"title":203,"path":204,"stem":205,"date":206,"type":177,"children":-1},"【翻译】Vue3 组合式API 完全指南","\u002Fposts\u002F2025\u002Fvue3-composables-guide","posts\u002F2025\u002Fvue3-composables-guide","2025-01-06 12:00:00",{"title":208,"path":209,"stem":210,"date":211,"type":177,"children":-1},"一个简易的文件共享系统的实现","\u002Fposts\u002F2025\u002Fa-simple-file-share-system","posts\u002F2025\u002FA simple file share system","2025-01-07 11:42:03",1789642590996]