templates: conditionally render the live preview listener component (#9973)

Conditionally render the live preview listener component so that we
don't make unnecessary requests to the API without draft mode being
enabled.
This commit is contained in:
Paul
2024-12-13 15:18:13 -06:00
committed by GitHub
parent 4dc50030b6
commit 050ff8409c
4 changed files with 8 additions and 4 deletions

View File

@@ -46,6 +46,7 @@ type Args = {
}
export default async function Page({ params: paramsPromise }: Args) {
const { isEnabled: draft } = await draftMode()
const { slug = 'home' } = await paramsPromise
const url = '/' + slug
@@ -72,7 +73,7 @@ export default async function Page({ params: paramsPromise }: Args) {
{/* Allows redirects for valid pages too */}
<PayloadRedirects disableNotFound url={url} />
<LivePreviewListener />
{draft && <LivePreviewListener />}
<RenderHero {...hero} />
<RenderBlocks blocks={layout} />

View File

@@ -42,6 +42,7 @@ type Args = {
}
export default async function Post({ params: paramsPromise }: Args) {
const { isEnabled: draft } = await draftMode()
const { slug = '' } = await paramsPromise
const url = '/posts/' + slug
const post = await queryPostBySlug({ slug })
@@ -55,7 +56,7 @@ export default async function Post({ params: paramsPromise }: Args) {
{/* Allows redirects for valid pages too */}
<PayloadRedirects disableNotFound url={url} />
<LivePreviewListener />
{draft && <LivePreviewListener />}
<PostHero post={post} />

View File

@@ -46,6 +46,7 @@ type Args = {
}
export default async function Page({ params: paramsPromise }: Args) {
const { isEnabled: draft } = await draftMode()
const { slug = 'home' } = await paramsPromise
const url = '/' + slug
@@ -72,7 +73,7 @@ export default async function Page({ params: paramsPromise }: Args) {
{/* Allows redirects for valid pages too */}
<PayloadRedirects disableNotFound url={url} />
<LivePreviewListener />
{draft && <LivePreviewListener />}
<RenderHero {...hero} />
<RenderBlocks blocks={layout} />

View File

@@ -42,6 +42,7 @@ type Args = {
}
export default async function Post({ params: paramsPromise }: Args) {
const { isEnabled: draft } = await draftMode()
const { slug = '' } = await paramsPromise
const url = '/posts/' + slug
const post = await queryPostBySlug({ slug })
@@ -55,7 +56,7 @@ export default async function Post({ params: paramsPromise }: Args) {
{/* Allows redirects for valid pages too */}
<PayloadRedirects disableNotFound url={url} />
<LivePreviewListener />
{draft && <LivePreviewListener />}
<PostHero post={post} />