要定义一些您可以在站点的任何位置访问的变量,您可以将它们添加到您的主题配置中。
如果您还没有,请config.js
在.vuepress/config.js
.
这个文件应该导出一个对象。
您想为此添加一个themeConfig: {}
。
您在对象上设置的themeConfig
属性将在您的整个站点中可用$themeConfig
。
//- .vuepress/config.js
module.exports = {
themeConfig: {
//- Define your variables here
author: 'Name',
foo: 'bar'
}
}
{{ $themeConfig.author }} //- 'Name'
{{ $themeConfig.foo }} //- 'bar
通过使用全局计算函数,您还可以轻松地在本地/每页覆盖。(这也可以提供一种更简洁的方式来访问变量)
enhanceApp.js
在与 , 相同的位置添加文件config.js
将使您能够访问 Vue 实例 - 您可以在其中为所有组件定义一个 mixin。
你可以在这个 mixin 中定义一些计算属性,它们首先检查页面 frontmatter 数据中的值,然后回退到 themeConfig 中设置的值。允许您设置一些可以在每页本地覆盖的默认值。
//- .vuepress/enhanceApp.js
export default ({ Vue }) => {
Vue.mixin({
computed: {
author() {
const { $themeConfig, $frontmatter } = this
return $frontmatter.author || $themeConfig.author
},
foo() {
const { $themeConfig, $frontmatter } = this
return $frontmatter.foo || $themeConfig.foo
}
}
})
}
{{ author }} //- 'Name'
{{ foo }} //- 'bar
Vuepress 配置文档
Vuepress 应用级别增强