feat: 页面级别控制是否可评论
This commit is contained in:
parent
f4e6560b96
commit
1ebab7054a
@ -1,5 +1,6 @@
|
||||
<script lang="ts" setup>
|
||||
import { usePageData } from '@vuepress/client'
|
||||
import { computed } from 'vue'
|
||||
import type { PlumeThemePageData } from '../../shared/index.js'
|
||||
import { useDarkMode, useSidebar } from '../composables/index.js'
|
||||
import PageAside from './PageAside.vue'
|
||||
@ -9,6 +10,9 @@ import PageMeta from './PageMeta.vue'
|
||||
const { hasSidebar, hasAside } = useSidebar()
|
||||
const isDark = useDarkMode()
|
||||
const page = usePageData<PlumeThemePageData>()
|
||||
const hasComments = computed(() => {
|
||||
return page.value.frontmatter.comments !== false
|
||||
})
|
||||
</script>
|
||||
<template>
|
||||
<div
|
||||
@ -34,7 +38,7 @@ const page = usePageData<PlumeThemePageData>()
|
||||
<PageMeta />
|
||||
<Content class="plume-content" />
|
||||
<PageFooter />
|
||||
<PageComment :darkmode="isDark" />
|
||||
<PageComment v-if="hasComments" :darkmode="isDark" />
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
@ -52,9 +56,9 @@ const page = usePageData<PlumeThemePageData>()
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.plume-page.is-blog {
|
||||
/* .plume-page.is-blog {
|
||||
padding-top: calc(var(--vp-nav-height) + 32px);
|
||||
}
|
||||
} */
|
||||
|
||||
@media (min-width: 768px) {
|
||||
.plume-page {
|
||||
|
||||
@ -16,7 +16,7 @@ const navEl = ref<HTMLElement | null>(null)
|
||||
const isLocked = useScrollLock(inBrowser ? document.body : null)
|
||||
|
||||
watch(
|
||||
[props, navEl],
|
||||
[() => props.open, navEl],
|
||||
() => {
|
||||
if (props.open) {
|
||||
isLocked.value = true
|
||||
|
||||
@ -19,6 +19,7 @@ export interface PlumeThemeHeroAction {
|
||||
}
|
||||
|
||||
export interface PlumeThemePageFrontmatter {
|
||||
comments?: boolean
|
||||
editLink?: boolean
|
||||
editLinkPattern?: string
|
||||
lastUpdated?: boolean
|
||||
@ -33,7 +34,6 @@ export interface PlumeThemePostFrontmatter extends PlumeThemePageFrontmatter {
|
||||
tags?: string[]
|
||||
sticky?: boolean | number
|
||||
article?: boolean
|
||||
banner?: string
|
||||
}
|
||||
|
||||
export interface PlumeThemeNoteFrontmatter extends PlumeThemePageFrontmatter {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user