Skip to content
当前页导航

MPA 模式 实验性

MPA(多页面应用程序)模式可以通过命令行vitepress build --mpa启用,或者通过配置mpa: true选项启用。

在 MPA 模式下,默认情况下渲染所有页面时不包含任何 JavaScript。因此,生产站点可能会通过审核工具获得更好的初始访问性能分数。

但由于没有SPA导航,跨页面链接会导致全页面重新加载。 MPA 模式下的加载后导航不会像 SPA 模式下那样即时。

另请注意,默认情况下无 JS 意味着您本质上纯粹将 Vue 用作服务器端模板语言。浏览器中不会附加任何事件处理程序,因此不会有交互性。要加载客户端 JavaScript,您需要使用特殊的<script client>标签:

html
<script client>
document.querySelector('h1').addEventListener('click', () => {
  console.log('client side JavaScript!')
})
</script>

# Hello

<script client> 是 VitePress 独有的功能,不是 Vue 功能。它适用于.md.vue文件,但仅适用于 MPA 模式。所有主题组件中的客户端脚本将捆绑在一起,而特定页面的客户端脚本将仅针对该页面进行拆分。

请注意,<script client> 不被评估为 Vue 组件代码:它被作为纯 JavaScript 模块处理。因此,只有当您的站点需要绝对最小的客户端交互性时,才应使用 MPA 模式。

本文档由全栈行动派(qzxdp.cn)翻译并整理