[{"data":1,"prerenderedAt":396},["ShallowReactive",2],{"navigation":3,"blog-posts":38},[4,8,12,16],{"title":5,"path":6,"stem":7},"Home","/","1.index",{"title":9,"path":10,"stem":11},"开发工具","/web-dev-tools","2.web-dev-tools",{"title":13,"path":14,"stem":15},"About","/about","9.about",{"title":17,"path":18,"stem":19,"children":20,"page":37},"Blog","/blog","blog",[21,25,29,33],{"title":22,"path":23,"stem":24},"Hello World","/blog/hello-world","blog/hello-world",{"title":26,"path":27,"stem":28},"那些让我的开发效率翻倍的神仙工具","/blog/my-favorite-tools","blog/my-favorite-tools",{"title":30,"path":31,"stem":32},"从零开始：我是如何搭建这个网站的","/blog/why-content-winds","blog/why-content-winds",{"title":34,"path":35,"stem":36},"为什么我最终爱上了 Tailwind CSS","/blog/why-i-love-tailwind","blog/why-i-love-tailwind",false,[39,101,247,347],{"id":40,"title":22,"body":41,"description":93,"extension":94,"layout":95,"meta":96,"navigation":98,"path":23,"seo":99,"stem":24,"__hash__":100},"content/blog/hello-world.md",{"type":42,"value":43,"toc":86},"minimal",[44,49,53,58,61,65,83],[45,46,48],"h1",{"id":47},"欢迎来到-hello-world","欢迎来到 Hello World",[50,51,52],"p",{},"你好！这是我的第一篇博客文章。",[54,55,57],"h3",{"id":56},"为什么写这篇博客","为什么写这篇博客？",[50,59,60],{},"因为之前部署的时候遇到了 404 错误，系统需要我创建这个页面来完成静态构建。\n现在它成功生成了，恭喜你，网站部署已经迈出了重要的一步！",[54,62,64],{"id":63},"接下来做什么","接下来做什么？",[66,67,68,77,80],"ul",{},[69,70,71,72,76],"li",{},"你可以去 ",[73,74,75],"code",{},"content/"," 目录下写更多属于自己的 Markdown 文章。",[69,78,79],{},"你可以自定义页面的标题和描述。",[69,81,82],{},"可以尝试在 Markdown 里面插入图片、代码块或者使用 Vue 组件。",[50,84,85],{},"祝你写作愉快！🎉😊",{"title":87,"searchDepth":88,"depth":88,"links":89},"",2,[90,92],{"id":56,"depth":91,"text":57},3,{"id":63,"depth":91,"text":64},"这是我的第一篇文章，欢迎来到我的博客！","md",null,{"date":97},"2025-09-26",true,{"title":22,"description":93},"GGK_iZlbwpvrrBXZXISlUf52w0d-GEFFcQLBPTNLV8U",{"id":102,"title":26,"body":103,"description":242,"extension":94,"layout":95,"meta":243,"navigation":98,"path":27,"seo":245,"stem":28,"__hash__":246},"content/blog/my-favorite-tools.md",{"type":42,"value":104,"toc":236},[105,107,110,114,125,129,136,142,146,156,159,162,232],[45,106,26],{"id":26},[50,108,109],{},"俗话说：“工欲善其事，必先利其器。” 在这个技术迭代飞快的时代，拥有几件趁手的“兵器”能省下大把时间。今天分享几个我最近常用的宝藏工具。",[54,111,113],{"id":112},"_1-前端开发vs-code-github-copilot","1. 前端开发：VS Code + GitHub Copilot",[50,115,116,120,121,124],{},[117,118,119],"strong",{},"VS Code"," 应该不用多说了，前端界的“宇宙第一 IDE”。搭配上 ",[117,122,123],{},"GitHub Copilot","，写代码就像开了挂。很多时候我只需要敲出注释，它就能帮我把剩下的逻辑补全，简直是摸鱼……哦不，是提高效率的利器。",[54,126,128],{"id":127},"_2-静态网站托管cloudflare-pages","2. 静态网站托管：Cloudflare Pages",[50,130,131,132,135],{},"以前部署网站要买服务器、配 Nginx，繁琐得很。现在直接把代码推到 GitHub，",[117,133,134],{},"Cloudflare Pages"," 就能自动帮你构建、部署，而且自带全球 CDN，免费额度非常香。",[137,138,139],"blockquote",{},[50,140,141],{},"提示：它的构建速度很快，遇到报错看日志也很清晰。",[54,143,145],{"id":144},"_3-内容管理nuxt-content","3. 内容管理：Nuxt Content",[50,147,148,149,151,152,155],{},"把 Markdown 变成精美的网页。以前用 WordPress 还要搞数据库，现在只需要在 ",[73,150,75],{}," 文件夹里建 ",[73,153,154],{},".md"," 文件，推上去就完事了。",[54,157,158],{"id":158},"常用命令速查",[50,160,161],{},"下面是平时经常用到的一个命令片段：",[163,164,168],"pre",{"className":165,"code":166,"language":167,"meta":87,"style":87},"language-bash shiki shiki-themes github-dark github-light","# 安装依赖\npnpm install\n\n# 本地启动预览\npnpm run dev\n\n# 构建静态文件并部署\npnpm run generate\n","bash",[73,169,170,179,189,194,200,211,216,222],{"__ignoreMap":87},[171,172,175],"span",{"class":173,"line":174},"line",1,[171,176,178],{"class":177},"sryI4","# 安装依赖\n",[171,180,181,185],{"class":173,"line":88},[171,182,184],{"class":183},"s-Z4r","pnpm",[171,186,188],{"class":187},"sg6BJ"," install\n",[171,190,191],{"class":173,"line":91},[171,192,193],{"emptyLinePlaceholder":98},"\n",[171,195,197],{"class":173,"line":196},4,[171,198,199],{"class":177},"# 本地启动预览\n",[171,201,203,205,208],{"class":173,"line":202},5,[171,204,184],{"class":183},[171,206,207],{"class":187}," run",[171,209,210],{"class":187}," dev\n",[171,212,214],{"class":173,"line":213},6,[171,215,193],{"emptyLinePlaceholder":98},[171,217,219],{"class":173,"line":218},7,[171,220,221],{"class":177},"# 构建静态文件并部署\n",[171,223,225,227,229],{"class":173,"line":224},8,[171,226,184],{"class":183},[171,228,207],{"class":187},[171,230,231],{"class":187}," generate\n",[233,234,235],"style",{},"html pre.shiki code .sryI4, html code.shiki .sryI4{--shiki-dark:#6A737D;--shiki-default:#6A737D}html pre.shiki code .s-Z4r, html code.shiki .s-Z4r{--shiki-dark:#B392F0;--shiki-default:#6F42C1}html pre.shiki code .sg6BJ, html code.shiki .sg6BJ{--shiki-dark:#9ECBFF;--shiki-default:#032F62}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":87,"searchDepth":88,"depth":88,"links":237},[238,239,240,241],{"id":112,"depth":91,"text":113},{"id":127,"depth":91,"text":128},{"id":144,"depth":91,"text":145},{"id":158,"depth":91,"text":158},"分享几个我日常开发、写作和部署网站时离不开的实用工具。",{"date":244},"2025-10-01",{"title":26,"description":242},"EAwP-wbMDirwN9K6XPwZeiaJwMAgQBT4v5vbSVuQPpE",{"id":248,"title":30,"body":249,"description":342,"extension":94,"layout":95,"meta":343,"navigation":98,"path":31,"seo":345,"stem":32,"__hash__":346},"content/blog/why-content-winds.md",{"type":42,"value":250,"toc":337},[251,254,257,261,268,271,274,301,303,334],[45,252,30],{"id":253},"从零开始我是如何搭建这个网站的",[50,255,256],{},"欢迎来到我的第二篇文章！今天我想记录一下搭建这个个人博客的心路历程。",[54,258,260],{"id":259},"为什么选择-nuxt-content","为什么选择 Nuxt Content？",[50,262,263,264,267],{},"以前我总觉得建网站很麻烦，直到我遇到了 ",[117,265,266],{},"Nuxt Content","。它允许我直接写 Markdown，然后自动把它们变成漂亮的网页。对于喜欢用文字记录的人来说，这简直是神器。",[54,269,270],{"id":270},"遇到的一些小困难",[50,272,273],{},"在整个部署过程中，并非一帆风顺：",[275,276,277,291],"ol",{},[69,278,279,282,283,286,287,290],{},[117,280,281],{},"死链报错","：一开始只要删了文章，构建就会失败。后来我学会了在 ",[73,284,285],{},"nuxt.config.ts"," 里加上 ",[73,288,289],{},"failOnError: false","，世界瞬间安静了。",[69,292,293,296,297,300],{},[117,294,295],{},"数据查询","：Nuxt Content v3 升级后，查询语法变了，导致博客列表死活出不来。经过一番折腾，终于用 ",[73,298,299],{},"queryCollection"," 搞定了。",[54,302,64],{"id":63},[66,304,307,316,322,328],{"className":305},[306],"contains-task-list",[69,308,311,315],{"className":309},[310],"task-list-item",[312,313],"input",{"checked":98,"disabled":98,"type":314},"checkbox"," 跑通本地开发环境",[69,317,319,321],{"className":318},[310],[312,320],{"checked":98,"disabled":98,"type":314}," 成功部署到 Cloudflare Pages",[69,323,325,327],{"className":324},[310],[312,326],{"disabled":98,"type":314}," 写更多有用的技术文章",[69,329,331,333],{"className":330},[310],[312,332],{"disabled":98,"type":314}," 优化一下网站的主题和样式",[50,335,336],{},"感谢你的阅读！我们下一篇见。🎉",{"title":87,"searchDepth":88,"depth":88,"links":338},[339,340,341],{"id":259,"depth":91,"text":260},{"id":270,"depth":91,"text":270},{"id":63,"depth":91,"text":64},"记录使用 Nuxt、Cloudflare Pages 和 Content Winds 踩过的坑与收获。",{"date":344},"2025-09-15",{"title":30,"description":342},"taLMAK8ep-Wa66l0-TdbbIo-USbhLVdZneXbvYMRyyc",{"id":348,"title":34,"body":349,"description":391,"extension":94,"layout":95,"meta":392,"navigation":98,"path":35,"seo":394,"stem":36,"__hash__":395},"content/blog/why-i-love-tailwind.md",{"type":42,"value":350,"toc":389},[351,354,357,386],[45,352,34],{"id":353},"为什么我最终爱上了-tailwind-css",[50,355,356],{},"记得第一次看到 Tailwind CSS 的代码时，我的内心是崩溃的：",[163,358,362],{"className":359,"code":360,"language":361,"meta":87,"style":87},"language-html shiki shiki-themes github-dark github-light","\u003Cdiv class=\"bg-white dark:bg-gray-800 rounded-lg shadow p-8 my-8 max-w-3xl mx-auto\">\n","html",[73,363,364],{"__ignoreMap":87},[171,365,366,370,374,377,380,383],{"class":173,"line":174},[171,367,369],{"class":368},"sQ3_J","\u003C",[171,371,373],{"class":372},"sZkSk","div",[171,375,376],{"class":183}," class",[171,378,379],{"class":368},"=",[171,381,382],{"class":187},"\"bg-white dark:bg-gray-800 rounded-lg shadow p-8 my-8 max-w-3xl mx-auto\"",[171,384,385],{"class":368},">\n",[233,387,388],{},"html pre.shiki code .sQ3_J, html code.shiki .sQ3_J{--shiki-dark:#E1E4E8;--shiki-default:#24292E}html pre.shiki code .sZkSk, html code.shiki .sZkSk{--shiki-dark:#85E89D;--shiki-default:#22863A}html pre.shiki code .s-Z4r, html code.shiki .s-Z4r{--shiki-dark:#B392F0;--shiki-default:#6F42C1}html pre.shiki code .sg6BJ, html code.shiki .sg6BJ{--shiki-dark:#9ECBFF;--shiki-default:#032F62}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":87,"searchDepth":88,"depth":88,"links":390},[],"从“这写的什么玩意儿”到“真香”，记录我使用原子化 CSS 的心路历程。",{"date":393},"2025-10-20",{"title":34,"description":391},"woqaHIS6_xSq5Drtb8ALEdXG-bsD-o-5wxaDIzEs8FY",1792911108562]