资讯动态

如何用 VITEPRESS_BUILD_LOCALE 与 npm run build:single 只构建 easy-vibe 的单个语言版本

发布时间:2026/9/14 8:33:03 来源:尧图企业网站定制
如何用 VITEPRESS_BUILD_LOCALE 与 npm run build:single 只构建 easy-vibe 的单个语言版本【免费下载链接】easy-vibe vibe coding 101The first course for AI-native product builders.项目地址: https://gitcode.com/GitHub_Trending/ea/easy-vibeeasy-vibe 是一个 VitePress 站点仓库中docs/下并存 10 个语言目录zh-cn、en、zh-tw、ja-jp、ko-kr、es-es、fr-fr、de-de、ar-sa、vi-vn。默认的npm run build会执行 scripts/build-locales.mjs 逐个 locale 分组构建并合并产物。如果你只需要构建其中一种语言——比如快速核对某一语言的内容改动、或单独上线某个语言版本——可以通过环境变量VITEPRESS_BUILD_LOCALE配合 package.json 中的build:single脚本完成。本文给出这条单语言构建路径的完整命令、配置原理和结果验证方式。准备条件按 package.json 的engines声明需要 Node.js 18.0.0。在项目根目录安装依赖vitepress版本为^2.0.0-alpha.16见 package.jsonnpm installVITEPRESS_BUILD_LOCALE的取值必须是 docs/.vitepress/config.mjs 中localeMap键对应的语言目录名即上面列出的 10 个目录名之一例如zh-cn、en。取值不合法时构建不会失败而是回退为构建全部语言验证方式见下文。build:single 脚本做了什么package.json 中相关脚本的定义build:single: npm run sitemap node --max-old-space-size8192 node_modules/vitepress/bin/vitepress.js build docs, build:single:force: npm run sitemap node --max-old-space-size8192 node_modules/vitepress/bin/vitepress.js build docs --force, preview: vitepress preview docs与npm run build调用build-locales.mjs的分组构建流程不同build:single是一次直接的 VitePress 构建先执行npm run sitemap即 scripts/generate-sitemap.mjs按 scripts/README.md 的说明用于生成sitemap.xml与robots.txt以 8192 MB 堆内存启动 Node 运行vitepress build docs产物输出到docs/.vitepress/distscripts/build-locales.mjs 中最终产物目录同为docs/.vitepress/dist。指定单个语言执行构建在项目根目录将VITEPRESS_BUILD_LOCALE与build:single组合使用bash 语法VITEPRESS_BUILD_LOCALEzh-cn npm run build:single把zh-cn替换为你要构建的语言目录名即可。作用机制在 docs/.vitepress/config.mjs 中配置读取process.env.VITEPRESS_BUILD_LOCALE将VITEPRESS_BUILD_LOCALES_ACTIVE分组构建脚本内部使用的变量或VITEPRESS_BUILD_LOCALE解析为当前生效的 locale 列表把所有未选中的语言目录加入srcExclude形如${locale}/**从而让本次构建的源文件只包含目标语言的文档。因此上述命令构建出的dist中只会有zh-cn语言的 HTML 页面其余 9 个语言目录不会参与构建。结果验证检查构建日志中的回退警告。如果取值不是有效的语言目录config.mjs 会打印Unsupported VITEPRESS_BUILD_LOCALE你填的值. Building all locales.出现这条警告说明值写错了本次构建回退为全部语言。日志中没有该警告说明单语言筛选已生效。检查产物目录。构建结束后查看docs/.vitepress/dist由于srcExclude排除了其余语言目录其中应只有目标语言的页面。本地预览。运行npm run preview即vitepress preview docs按 docs/DEPLOYMENT.md 的说明本地预览的 base 为/easy-vibe/、端口 4173文档给出的示例地址形如http://localhost:4173/easy-vibe/en/stage-1/...将路径中的en换成你构建的语言如zh-cn确认首页与页面链接、语言切换行为正常即可。排查与限制变量名不要混用。VITEPRESS_BUILD_LOCALE单数是手动指定单个语言用的VITEPRESS_BUILD_LOCALES_ACTIVE复数是build-locales.mjs在分组构建时设置的配置中它优先于单数变量。手动构建时只用单数变量。为什么按单个 locale 构建。scripts/build-locales.mjs 中的注释说明VitePress 2 alpha 每次构建使用一个共享的.temp目录同一时间构建多个 locale 可能删除尚在进行 SSR 渲染的 chunks产生间歇性ERR_MODULE_NOT_FOUND失败因此默认一次只构建一个 localeBUILD_LOCALE_GROUP_SIZE默认 1。build:single的单次直接构建天然符合这一约束。可选分支强制构建。如果常规构建未反映最新内容改动仓库提供了 package.json 中的build:single:force与build:single相同但给vitepress build追加--force参数VITEPRESS_BUILD_LOCALEzh-cn npm run build:single:force并发参数。config.mjs 还读取VITEPRESS_BUILD_CONCURRENCY默认1注释说明默认采用确定性渲染、CI 中可选更高并发单语言构建无特殊需求时保持默认即可config.mjs。部署衔接单语言构建产物与全量构建一样位于docs/.vitepress/dist。按 docs/DEPLOYMENT.md该站点的base自动适配部署平台Vercel 上VERCEL1时 base 为/否则GitHub Pages、本地为/easy-vibe/。上线后按该文档的 Post-Deploy Checklist 检查首页可加载、导航链接正常、语言切换可用、图片正常显示。【免费下载链接】easy-vibe vibe coding 101The first course for AI-native product builders.项目地址: https://gitcode.com/GitHub_Trending/ea/easy-vibe创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价