客户端 API
客户端 API 可以通过 vuepress/client
来引入。
组合式 API
useClientData
详情:
返回所有客户端数据的 Ref 对象。
每个属性也可以通过下列的组合式 API 来访问。
示例:
<script setup lang="ts"> import { useClientData } from 'vuepress/client' const { pageData, pageFrontmatter, pageHead, pageHeadTitle, pageLang, routeLocale, siteData, siteLocaleData, } = useClientData() </script>
usePageData
详情:
返回当前页面数据的 Ref 对象。
参考:
usePageFrontmatter
详情:
返回当前页面 Frontmatter 的 Ref 对象。
它的值是页面数据的
frontmatter
属性。
usePageHead
usePageHeadTitle
详情:
返回当前页面 Head 中的标题的 Ref 对象。
它的值是连接页面标题和站点标题后得到的。
usePageLang
详情:
返回当前页面语言的 Ref 对象。
它的值是页面数据的
lang
属性。
useRoutes
详情:
返回所有路由的 Ref 对象。
它的值是站点数据的路由信息。
参考:
useRouteLocale
详情:
返回当前路由对应的 locale path 的 Ref 对象。
它的值是 locales 配置的键之一。
useSiteData
详情:
返回站点数据的 Ref 对象。
useSiteLocaleData
详情:
返回当前 locale 的站点数据的 Ref 对象。
当前 locale 中的配置已经合并到顶层配置中。
onContentUpdated
详情:
当 markdown 文件内容发生变化时,触发回调。
该函数仅能在组件的
setup
阶段被调用。<script setup> import { onContentUpdated } from 'vuepress/client' onContentUpdated((reason) => { console.log(`content updated reason: ${reason}`) }) </script>
工具函数
defineClientConfig
详情:
帮助你创建 clientConfigFile 的工具函数。
参考:
resolveRoute
详情:
解析给定链接对应的路由
参考:
resolveRoutePath
详情:
解析给定链接对应的路由路径
参考:
withBase
详情:
在 URL 前添加站点 base 前缀。
参考:
常量
在客户端代码中有一些常量可以使用。
如果想要把这些常量的类型定义补充到你的代码环境中,请将 vuepress/client-types
添加到你的 tsconfig.json
里:
{ "compilerOptions": { "types": ["vuepress/client-types"] } }
__VUEPRESS_VERSION__
类型:
string
详情:
VuePress Core 的版本号。
__VUEPRESS_BASE__
类型:
string
详情:
配置中的 base 字段。
__VUEPRESS_DEV__
类型:
boolean
详情:
一个环境标记,用于标识当前是否运行在
dev
模式下。
__VUEPRESS_SSR__
类型:
boolean
详情:
一个环境标记,用于标识当前是否运行在服务端渲染 (SSR) 环境下。
进阶能力
resolvers 实验性能力
类型:
Record<string, Function>
详情:
一个响应式对象,其中的方法决定了如何获取全局计算属性。
示例:
在客户端配置文件中自定义 <title>
的格式:
import { defineClientConfig, resolvers } from 'vuepress/client' export default defineClientConfig({ enhance({ app, router, siteData }) { resolvers.resolvePageHeadTitle = (page, siteLocale) => `${siteLocale.title} > ${page.title}` }, })
警告
resolvers
会直接影响 VuePress 的基础功能,在修改前请确保你已充分了解其用途。