VuePress 生态系统VuePress 生态系统
  • 主题指南
  • 默认主题
  • Hope 主题
  • Plume 主题
  • Reco 主题
  • 功能插件
  • Markdown 插件
  • 搜索插件
  • 博客插件
  • 渐进式应用插件
  • 统计分析插件
  • 搜索引擎优化插件
  • 开发插件
  • 工具插件
  • AI 插件
  • @vuepress/helper
  • English
  • 简体中文
GitHub
  • 主题指南
  • 默认主题
  • Hope 主题
  • Plume 主题
  • Reco 主题
  • 功能插件
  • Markdown 插件
  • 搜索插件
  • 博客插件
  • 渐进式应用插件
  • 统计分析插件
  • 搜索引擎优化插件
  • 开发插件
  • 工具插件
  • AI 插件
  • @vuepress/helper
  • English
  • 简体中文
GitHub
  • @vuepress/helper
    • Node

      • 打包器相关
      • 多语言相关
      • 页面相关
    • 客户端相关
    • 共享方法
    • 样式

页面相关

页面常见信息生成器。

这些函数仅在 @vuepress/helper 中可用。

getPageExcerpt

获取页面摘要。

export interface PageExcerptOptions {
  /**
   * 摘要分隔符
   *
   * @default "<!-- more -->"
   */
  separator?: string

  /**
   * 摘要的长度
   *
   * @description 摘要的长度会尽可能的接近这个值
   *
   * @default 300
   */
  length?: number

  /**
   * 被认为是自定义元素的标签
   *
   * @description 用于判断一个标签是否是自定义元素,因为在摘要中,所有的未知标签都会被移除。
   */
  isCustomElement?: (tagName: string) => boolean

  /**
   * 是否保留页面标题 (第一个 h1)
   *
   * @default false
   */
  keepPageTitle?: boolean

  /**
   * 是否保留代码块的标签,诸如行号和高亮行
   *
   * @default false
   */
  keepFenceDom?: boolean
}

export const getPageExcerpt: (
  app: App,
  page: Page,
  options?: PageExcerptOptions,
) => string

getPageText

获取页面纯文本。

export interface PageTextOptions {
  /**
   * 是否将文字转换成单行内容
   *
   * @default false
   */
  singleLine?: boolean

  /**
   * 文字的长度
   *
   * @description 文字的长度会尽可能的接近这个值
   *
   * @default 300
   */
  length?: number

  /**
   * 需要移除的标签
   *
   * @description 默认情况下表格和代码块会被移除
   *
   * @default ['table', 'pre']
   */
  removedTags?: string[]
}

export const getPageText: (
  app: App,
  page: Page,
  options?: PageTextOptions,
) => string
在 GitHub 上编辑此页
上次更新: 2025/1/10 18:07
贡献者: Mister-Hope
Prev
多语言相关