VuePress备忘
常用资料
扩展默认主题
1. theme
新建theme目录,结构如下:
└─ docs
├─ .vuepress
│ ├─ theme
│ │ ├─ layouts
│ │ │ └─ Draft.vue
│ │ └─ index.tx
│ └─ config.tx
└─ README.md
2. draft.vue
Draft.vue内容如下:
<template>
<Layout>
<template #page-bottom>
<div class="my-footer">This is my draft page footer</div>
</template>
</Layout>
</template>
<script>
import Layout from "@vuepress/theme-default/lib/client/layouts/Layout.vue";
export default {
components: {
Layout,
},
};
</script>
<style lang="css">
.my-footer {
text-align: center;
}
</style>
3. theme/index.ts
theme/index.tx内容如下:
import type { ThemeObject } from '@vuepress/core'
import { path } from '@vuepress/utils'
const localTheme: ThemeObject = {
name: 'vuepress-theme-local',
extends: '@vuepress/theme-default',
layouts: {
Draft: path.resolve(__dirname, 'layouts/Draft.vue'),
},
}
export default localTheme
4. config.tx
config.tx内容如下:
import { defineUserConfig } from 'vuepress'
import type { DefaultThemeOptions } from 'vuepress'
import { path } from "@vuepress/utils";
export default defineUserConfig<DefaultThemeOptions>({
// 其他配置
// ...
// 增加本行,使本地主题生效
theme: path.resolve(__dirname, "./theme"),
themeConfig: {
// 主题配置
// ...
}
})
5. layout
在需要调整的markdown文档修改frontmatter,(注意大小写与layouts/Draft.vue文件一致):
---
layout: Draft
---
扩展Markdown
任务列表
- 安装插件
markdown-it-task-lists
yarn add -D markdown-it-task-lists
- 配置插件
// .vuepress/config.ts
export default defineUserConfig<DefaultThemeOptions>({
extendsMarkdown: md => {
// 启用任务列表
// https://github.com/revin/markdown-it-task-lists
md.use(require('markdown-it-task-lists'), {
label: true,
labelAfter: true,
});
},
});