i18next.init({
  fallbackLng: { 'zh-Hant': ['zh', 'en'], default: ['en'] },
});

繁体中文站上线后导航整块空白,控制台没有报错,切到简中正常,受影响页面 68 个。先别急着动参数,把报错原文和时间点记下来,顺序反了容易白折腾。

原因不复杂,语言配置只登记了 zh-Hant,没有声明回退到 zh。i18next 找不到词条时返回空字符串,模板把空串直接渲染成空节点。日志级别是 warn,被过滤掉了。

这次卡住的地方就在「语言回退链」这一环,单独把它拎出来验证,别和其他改动混在同一次发布里。动手前把原文件复制一份带时间戳,出问题立刻换回去,比现场分析快得多。

一次只改一处,改完立刻验证,几个改动叠在一起,出问题就说不清是谁导致的。

处理上按这个顺序:给 zh-Hant 配 fallbackLng 指向 zh;回退仍为空时返回 key 而不是空串;把缺词日志级别提到 warn 以上并接入告警;扫一遍 68 个页面 确认导航和页脚都有内容。

改完只确认一件事:繁体站导航和页脚恢复显示,缺词日志里不再出现空字符串回退。

作者 9823189