작성
·
1.3K
·
수정됨
0
Error occurred prerendering page "/newpost". Read more: https://nextjs.org/docs/messages/prerender-error
ReferenceError: document is not defined
at 46593 (/Users/gyeongdeokpark/Documents/01.GitHub/codeblog/.next/server/app/newpost/page.js:2:59980)
at __webpack_require__ (/Users/gyeongdeokpark/Documents/01.GitHub/codeblog/.next/server/webpack-runtime.js:1:146)
at F (/Users/gyeongdeokpark/Documents/01.GitHub/codeblog/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js:36:6049)
at /Users/gyeongdeokpark/Documents/01.GitHub/codeblog/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js:36:8464
at W._fromJSON (/Users/gyeongdeokpark/Documents/01.GitHub/codeblog/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js:36:8902)
at JSON.parse (<anonymous>)
at L (/Users/gyeongdeokpark/Documents/01.GitHub/codeblog/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js:36:5770)
at t (/Users/gyeongdeokpark/Documents/01.GitHub/codeblog/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js:36:12155)
✓ Generating static pages (5/5)
> Export encountered errors on following paths:
/newpost/page: /newpost
npm run build시에 발생하는 에러입니다.
각종 사이트에서는 14버전에서 에러가 발생하고 있다고 하는 글 들만 있고 해결방법을 찾지 못했습니다..
gpt에서는 클라이언트 사이드에서 실행되어야 하는 코드가 서버 사이드에서 실행되서 그렇다고 하는데
잘해결이 안되고 있습니다. npm run dev시에는 에러없이 잘 실행됩니다.
"use client";
import React, { ChangeEventHandler, useState } from "react";
import LexicalEditor from "@/app/newpost/LexicalEditor";
function Page({ props }: any) {
const [title, setTitle] = useState("");
const [content, setContent] = useState("");
const onChangeTitle: ChangeEventHandler<HTMLInputElement> = (e) => {
setTitle(e.target.value);
};
const onSubmit = (e: any) => {
e.preventDefault();
console.log("제목 : ", title);
console.log("내용 : ", content);
};
return (
<form className="postForm" onSubmit={onSubmit}>
<div className="postForm__titleInputSection">
<input
className="postForm__titleInput"
type="text"
name="title"
value={title}
onChange={onChangeTitle}
placeholder={"제목을 입력하세요."}
/>
</div>
<div className="postForm__editorWrapper">
<LexicalEditor />
</div>
<button>작성하기</button>
</form>
);
}
export default Page;
깃허브 링크 입니다.
https://github.com/littleduck1219/codeblog/blob/main/src/app/newpost/page.tsx
답변 2
0
일단 어떤 코드에서 에러나는지를 확인해야 해서 newpost/page.tsx를 엄청 간단하게 만들어보세요.
function Page() {
return <div>페이지</div>
}
export default Page;
이런 식으로요. 여기서 빌드 성공하면 한 줄씩 넣어보면서 언제부터 에러가 나는지 보면 됩니다.
0
at 46593 (/Users/gyeongdeokpark/Documents/01.GitHub/codeblog/.next/server/app/newpost/page.js:2:59980)
여기가 가리키는 코드가 뭔가요?
찾아보니 숨김폴더로 있긴합니다.. 두개의 파일이 있는데
https://cherry-pantydraco-d54.notion.site/next-server-app-58ba9c2de2a24d73b452e66b696b3c3c?pvs=4
너무길어서 일단 노션으로 링크 만들어서 공유드립니다!
newpost의 page는 위에 제가 드린 코드가 해당 코드 입니다.