Next.js
7668 단어 next.js
Next.js 소개
패키지 설치
yarn add next react react-dom
package.json에 스크립트 명령을 추가합니다.
package.json"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint"
}
정적 생성 및 서버측 렌더링
Next.js는 페이지라는 개념을 중심으로 구성되어 있습니다. 페이지는 pages 디렉토리 아래의 js 파일에서 내보낸 react component입니다. pages 디렉토리 아래에 index.js를 만들고 yarn dev를 실행하고 localhost:3000에 브라우저로 액세스하면 index.js의 내용이 표시되는 것을 확인할 수 있습니다.
mkdir pages && cd pages && touch index.js
/pages/index.jsfunction HomePage(){
return(
<div>
<h1>Welcome to Next.js</h1>
</div>
)
}
export default HomePage
Next.js에서 페이지는 react component이며 각 페이지는 파일 이름으로 라우팅됩니다.
예를 들어 다음 페이지에서 pages/about.js를 작성한 경우 localhost:3000/about에서 about.js의 내용이 표시됩니다.
/pages/about.jsfunction About(){
return(
<div>
<h1>About</h1>
</div>
)
}
export default About
네비게이션 바 만들기
지금까지 만든 두 페이지 사이를 전환할 수 있도록 탐색을 만듭니다. components 디렉토리 아래에 Navbar.js를 만들고 react component를 작성합니다.
이때 클라이언트 측에서의 전환은 next/link에서 내보낸 Link 컴포넌트를 사용합니다.
/components/Navbar.jsimport Link from "next/link";
const Navbar = () => {
return (
<ul>
<li>
<Link href="/">
<a>Home</a>
</Link>
</li>
<li>
<Link href="/about">
<a>About</a>
</Link>
</li>
</ul>
)
}
export default Navbar;
각 페이지에 탐색 막대를 표시하려면 페이지 디렉토리 아래의 각 파일에서 Navbar 구성 요소를 가져오고 그립니다.
※기술예는 HomePage만을 기재하고 있습니다.
/pages/index.jsimport Navbar from '../components/Navbar'
function HomePage() {
return (
<>
<Navbar />
<div>
<h1>Welcome to Next.js</h1>
</div>
</>
)
}
export default HomePage
지금까지 Nextjs의 두 페이지를 전환하는 응용 프로그램이 완성되었습니다.
홈페이지( http://localhost:3000/ )
About 페이지( http://localhost:3000/about )
Reference
이 문제에 관하여(Next.js), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/franz/items/ab3dda64f5f65c4d2a8a
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
yarn add next react react-dom
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint"
}
Next.js는 페이지라는 개념을 중심으로 구성되어 있습니다. 페이지는 pages 디렉토리 아래의 js 파일에서 내보낸 react component입니다. pages 디렉토리 아래에 index.js를 만들고 yarn dev를 실행하고 localhost:3000에 브라우저로 액세스하면 index.js의 내용이 표시되는 것을 확인할 수 있습니다.
mkdir pages && cd pages && touch index.js
/pages/index.js
function HomePage(){
return(
<div>
<h1>Welcome to Next.js</h1>
</div>
)
}
export default HomePage
Next.js에서 페이지는 react component이며 각 페이지는 파일 이름으로 라우팅됩니다.
예를 들어 다음 페이지에서 pages/about.js를 작성한 경우 localhost:3000/about에서 about.js의 내용이 표시됩니다.
/pages/about.js
function About(){
return(
<div>
<h1>About</h1>
</div>
)
}
export default About
네비게이션 바 만들기
지금까지 만든 두 페이지 사이를 전환할 수 있도록 탐색을 만듭니다. components 디렉토리 아래에 Navbar.js를 만들고 react component를 작성합니다.
이때 클라이언트 측에서의 전환은 next/link에서 내보낸 Link 컴포넌트를 사용합니다.
/components/Navbar.jsimport Link from "next/link";
const Navbar = () => {
return (
<ul>
<li>
<Link href="/">
<a>Home</a>
</Link>
</li>
<li>
<Link href="/about">
<a>About</a>
</Link>
</li>
</ul>
)
}
export default Navbar;
각 페이지에 탐색 막대를 표시하려면 페이지 디렉토리 아래의 각 파일에서 Navbar 구성 요소를 가져오고 그립니다.
※기술예는 HomePage만을 기재하고 있습니다.
/pages/index.jsimport Navbar from '../components/Navbar'
function HomePage() {
return (
<>
<Navbar />
<div>
<h1>Welcome to Next.js</h1>
</div>
</>
)
}
export default HomePage
지금까지 Nextjs의 두 페이지를 전환하는 응용 프로그램이 완성되었습니다.
홈페이지( http://localhost:3000/ )
About 페이지( http://localhost:3000/about )
Reference
이 문제에 관하여(Next.js), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/franz/items/ab3dda64f5f65c4d2a8a
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
import Link from "next/link";
const Navbar = () => {
return (
<ul>
<li>
<Link href="/">
<a>Home</a>
</Link>
</li>
<li>
<Link href="/about">
<a>About</a>
</Link>
</li>
</ul>
)
}
export default Navbar;
import Navbar from '../components/Navbar'
function HomePage() {
return (
<>
<Navbar />
<div>
<h1>Welcome to Next.js</h1>
</div>
</>
)
}
export default HomePage
Reference
이 문제에 관하여(Next.js), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/franz/items/ab3dda64f5f65c4d2a8a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)