说说用 nuxt 写了个博客的体验 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
yuhangch
2.53D
V2EX    程序员

说说用 nuxt 写了个博客的体验

  •  
  •   yuhangch
    yuhangch 2023 年 6 月 28 日 2830 次点击
    这是一个创建于 938 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前一直用的 hugo ,想用 cusdis 作为评论系统,又不想直接加载使用 iframe 加载,之前用过 vue ,就想用 nuxt 写个博客试试水。

    hugo 很好,生成快,社区活跃,但用起来总像带着镣铐跳舞:翻文档找 api ,编辑在 IDE 里一片红的 HTML 模板。。。

    说说用 nuxt 写博客的体验:一路过关斩将的畅快感。

    markdown 渲染

    首先,markdown 渲染直接拉出来 nuxt-content 就搞定了 ,之前的 md 几乎一点没改,把 quick start 的例子复制上,连路由带渲染直接齐活了,直接增强了我试水的信心。

    文章的目录直接使用 nuxt-contentcontent-list 组件搞定,shortcode 直接用Inline components 平替。

    纯属为了体验,也用了 YAML 和 CSV 分别用来存关于页的内容和一个类似说说的内容,也没啥问题。

    多语言

    @nuxtjs/i18n没费太大功夫,不同语言的文章分目录管理,localePath 函数处理了路由,不用各种 if-else,几乎没啥代码量。

    暗黑模式

    @nuxtjs/color-mode@nuxtjs/tailwindcss 用着也很舒服。

    RSS

    RSS包配合 nuxt-content , 找了篇博客,复制上也能用了。

    评论

    railway.app 跑了个 cusdis ,自己写了个组件调开放接口,是最费功夫的部分。 还遇到个小坑,请求时的pageId和响应结果里的pageId有点子不同,响应结果里的pageId是根据请求的Id生成的,使用响应结果里的pageId作为请求参数,会重新生成一个新的Page,这样生成的评论可以在管理后台看到,但在开放接口里请求不到,排查了好大一会 Orz 。

    最后

    最让我感觉爽的是,想用 turnstile 给评论的表单做个验证,也有nuxt-turnstile可以用。

    整个流程下来,最多的时间花在熟悉 nuxt 上了(之前只用过 vue ),花在功能业务上时间很少,或者说功能做起来都比较顺利,显得时间短。

    对我来说(用过 vue ,但前端菜),用 nuxt 完成博客文章列表、文章渲染、代码高亮、多语言、暗黑模式等等,比写一个 hugo 的主题要简单的多(各种 api 看的头大),感觉大家都可以去试试哈哈。

    5 条回复    2023-06-28 19:13:07 +08:00
    vitovan
        1
    vitovan  
       2023 年 6 月 28 日
    不要害羞,请贴出你的博客链接。
    1KTN90lKW9gVJ9vX
        2
    1KTN90lKW9gVJ9vX  
       2023 年 6 月 28 日 via Android
    那我也贴出我博客骗几个 ip 先:u.sv
    vitovan
        3
    vitovan  
       2023 年 6 月 28 日
    loading comments forever 是正常的吗?

    https://blog.yuhang.ch/posts/shares/tms-to-wmts
    yuhangch
        4
    yuhangch  
    OP
       2023 年 6 月 28 日
    @vitovan #3 这里还没做完♂,现在点击一下是拉取,someone 是你不~
    vitovan
        5
    vitovan  
       2023 年 6 月 28 日
    @yuhangch #4 趁热快做。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3635 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 10:35 PVG 18:35 LAX 02:35 JFK 05:35
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86