Skip to content

Commit 9c2a36f

Browse files
kecrilykiaking
andauthored
feat: add doc before and after slot (#762) (#786)
close #762 Co-authored-by: Kia Ishii <kia.king.08@gmail.com>
1 parent 753f35b commit 9c2a36f

File tree

4 files changed

+13
-1
lines changed

4 files changed

+13
-1
lines changed

docs/guide/theme-introduction.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ export default {
177177
...DefaultTheme,
178178
Layout() {
179179
return h(DefaultTheme.Layout, null, {
180-
'sidebar-top': () => h(MyComponent)
180+
'aside-outline-before': () => h(MyComponent)
181181
})
182182
}
183183
}
@@ -186,6 +186,8 @@ export default {
186186
Full list of slots available in the default theme layout:
187187

188188
- When `layout: 'doc'` (default) is enabled via frontmatter:
189+
- `doc-before`
190+
- `doc-after`
189191
- `aside-top`
190192
- `aside-bottom`
191193
- `aside-outline-before`

src/client/theme-default/Layout.vue

+3
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@ provide('close-sidebar', closeSidebar)
3434
<template #home-features-before><slot name="home-features-before" /></template>
3535
<template #home-features-after><slot name="home-features-after" /></template>
3636

37+
<template #doc-before><slot name="doc-before" /></template>
38+
<template #doc-after><slot name="doc-after" /></template>
39+
3740
<template #aside-top><slot name="aside-top" /></template>
3841
<template #aside-bottom><slot name="aside-bottom" /></template>
3942
<template #aside-outline-before><slot name="aside-outline-before" /></template>

src/client/theme-default/components/VPContent.vue

+3
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ useCopyCode()
3535
</VPHome>
3636

3737
<VPDoc v-else>
38+
<template #doc-before><slot name="doc-before" /></template>
39+
<template #doc-after><slot name="doc-after" /></template>
40+
3841
<template #aside-top><slot name="aside-top" /></template>
3942
<template #aside-outline-before><slot name="aside-outline-before" /></template>
4043
<template #aside-outline-after><slot name="aside-outline-after" /></template>

src/client/theme-default/components/VPDoc.vue

+4
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,15 @@ const pageName = path.replace(/[./]+/g, '_').replace(/_html$/, '')
3131

3232
<div class="content">
3333
<div class="content-container">
34+
<slot name="doc-before" />
35+
3436
<main class="main">
3537
<Content class="vp-doc" :class="pageName" />
3638
</main>
3739

3840
<VPDocFooter />
41+
42+
<slot name="doc-after" />
3943
</div>
4044
</div>
4145
</div>

0 commit comments

Comments
 (0)