Чтобы определить некоторые переменные, к которым вы могли бы получить доступ в любом месте вашего сайта, вы можете добавить их в конфигурацию вашей темы.
Если у вас ее еще нет, создайте файл config.js
в .vuepress/config.js
,
Этот файл должен экспортировать объект.
Вы хотите добавить к этому themeConfig: {}
.
Свойства, заданные для объекта themeConfig
, будут доступны на протяжении всего вашегоsite on $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 - где вы можете определить миксин длявсе компоненты.
Вы можете определить некоторые вычисленные свойства в этом миксине, которые сначала проверяют значение в данных 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