오류 수정
This commit is contained in:
@@ -15,14 +15,22 @@ try {
|
||||
}
|
||||
|
||||
interface Params {
|
||||
params: {
|
||||
params: Promise<{
|
||||
id: string;
|
||||
};
|
||||
}>;
|
||||
}
|
||||
|
||||
export async function GET(request: Request, ctx: Params) {
|
||||
// Next.js 가 params 를 항상 보장하지 않는 상황을 대비해, URL 경로에서 id 를 보완적으로 파싱한다.
|
||||
let id: string | undefined = ctx?.params?.id;
|
||||
let id: string | undefined;
|
||||
|
||||
try {
|
||||
const resolved = await ctx.params;
|
||||
id = resolved?.id;
|
||||
} catch {
|
||||
id = undefined;
|
||||
}
|
||||
|
||||
if (!id) {
|
||||
try {
|
||||
const url = new URL(request.url);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
"use client";
|
||||
|
||||
import type { CSSProperties, ReactNode } from "react";
|
||||
import { Fragment, useEffect, useState } from "react";
|
||||
import { Fragment, Suspense, useEffect, useState } from "react";
|
||||
import Link from "next/link";
|
||||
import { useRouter, useSearchParams } from "next/navigation";
|
||||
import { FilePlus2, Trash2, Eye, Pencil, ListChecks, Undo2, Redo2 } from "lucide-react";
|
||||
@@ -71,6 +71,14 @@ import { PropertiesSidebar } from "./panels/PropertiesSidebar";
|
||||
import { EditorCanvas } from "./EditorCanvas";
|
||||
|
||||
export default function EditorPage() {
|
||||
return (
|
||||
<Suspense fallback={null}>
|
||||
<EditorPageInner />
|
||||
</Suspense>
|
||||
);
|
||||
}
|
||||
|
||||
function EditorPageInner() {
|
||||
const router = useRouter();
|
||||
const searchParams = useSearchParams();
|
||||
const blocks = useEditorStore((state) => state.blocks);
|
||||
|
||||
Reference in New Issue
Block a user