Skip to content

最后更新时间

最近一条内容的更新时间会显示在页面右下角。

全局配置

lastUpdated 只要是正值,就会启用

类型:LastUpdatedOptions

LastUpdatedOptions
ts
export interface LastUpdatedOptions {
  /**
   * @default 'Last updated'
   */
  text?: string;

  /**
   * @default
   * { dateStyle: 'short',  timeStyle: 'short' }
   */
  formatOptions?: Intl.DateTimeFormatOptions & { forceLocale?: boolean };
}

ts
export default {
  themeConfig: {
    lastUpdated: {
      text: "Updated at",
      formatOptions: {
        dateStyle: "full",
        timeStyle: "medium",
      },
    },
  },
};
js
export default {
  lastUpdated: true,
};

提示

VitePress 通过每个文件最近一次 Git 提交的时间戳显示"最后更新"时间,因此你必须提交 markdown 文件才能看到最后更新时间。

具体实现上,VitePress 会对每个文件执行git log -1 --pretty="%ai"命令以获取时间戳。若所有页面显示相同的更新时间,可能是由于浅克隆(常见于 CI 环境)导致 Git 历史记录受限所致。

GitHub Actions 中修复此问题,请在工作流中添加以下配置:

yaml
- name: Checkout
  uses: actions/checkout@v4
  with:
    fetch-depth: 0

其他 CI/CD 平台也有类似设置。

若上述选项不可用,可在 package.json 中的 docs:build 命令后手动添加获取操作:

json
"docs:build": "git fetch --unshallow && vitepress build docs"

frontmatter 配置

在 md 页面中可以使用 frontmatter 上的 lastUpdated 选项关闭:

yaml
---
lastUpdated: false
---