min

更新说明(2026-01-02)

本文档用于说明 Issue #30(外部资源/图标/嵌套交互)相关改动中,配置层面的新增字段、行为变更与迁移要点

关联 Issue:https://github.com/rbetree/menav/issues/30

最后更新:2026-01-02


1. 新增/扩展的配置字段

1.1 site.yml -> icons.mode(站点卡片图标模式 / 隐私)

用途:控制“站点卡片图标”的全局渲染方式。

取值:

注意:

示例:

# config/user/site.yml
icons:
  mode: manual

1.2 pages/*.yml -> sites[].faviconUrl(站点级自定义图标链接)

用途:为单个站点指定图标链接(可远程或本地相对路径),用于兜底“favicon 服务返回默认图标/网络不可达”等情况。

说明:

示例:

sites:
  - name: '内部系统'
    url: 'https://intranet.example/'
    faviconUrl: 'assets/icons/intranet.png'

1.3 pages/*.yml -> sites[].forceIconMode(站点级强制图标模式)

用途:强制该站点使用指定模式(不设置则跟随全局 icons.mode)。

取值:

优先级:

示例:

sites:
  - name: 'Ant Design'
    url: 'https://ant.design/'
    icon: 'fas fa-th'
    forceIconMode: manual

2. 行为变更与修复要点(无需迁移字段)

2.1 icons.mode 全局切换修复

修复点:此前 site.yml 中的 icons 没有被提升为顶层 icons,导致模板与运行时读取到的仍是默认 favicon。本次已修复,site.yml -> icons.mode 会被模板/运行时统一读取生效。

2.2 favicon 双域名回退(.com.cn

修复点:favicon 默认使用 t3.gstatic.com,失败时自动切换 t3.gstatic.cn 重试一次,提升国内网络可用性。

2.3 多级结构站点新标签页打开一致性

修复点:多级结构(subcategories/groups/subgroups)下站点默认值未递归补齐,导致 externalundefined 时不输出 target="_blank"。本次已在生成阶段递归补齐 sites[].external 默认 true(显式 external: false 保持同页打开)。


3. 迁移建议(从旧版本升级)

  1. 若使用 config/user/:请在 config/user/site.yml 中设置 icons.mode,然后执行 npm run build 重新生成页面。
  2. 若遇到某些站点 favicon 始终显示默认图标:建议对该站点配置 forceIconMode: manual(使用 Font Awesome)或提供 faviconUrl 指向可靠图片(远程或本地 assets/)。