- 대체하는게 아니고 wrapping을 하는 것이다
- a tag에 CSS class를 지정한다고
Linktag에className줘봐야 소용 없다 - 참고
[nextjs] `Link`는 `a`의 대체제가 아니다
· One min read
Link tag에 className 줘봐야 소용 없다npm run start 사용npm run export 사용package.json에서 scripts.build에 next export 추가: "build": "next build && next export"npx 사용한다npx create-next-app next-oauth-101cd next-oauth-101; npm run dev
next.js/examples 아래서 필요한 기능을 찾는다.
NextAuth.js를 추가하면 끝이다API's & Service -> Credentials -> Create credentials -> OAuth Client IDnpm install next-auth
.env를 사용한다.env.production, .env.development 등을 사용하라는데 이것들은 git에 올리지 않아야겠지?http://localhost:3000/api/auth/a/b/c에 대해 req.query를 출력해 보면 { nextauth: [ 'a', 'b', 'c' ] } 이 나온다.env.local를 읽어오게 되어있다NEXT_PUBLIC_ 으로 시작하면 browser에서도 읽을 수 있게 제공된다.env.local: 최고의 우선순위. 모든걸 override한다. git에 올리면 안된다 (.gitignore에 추가되어야 한다).env.development, .env.production: development용(next dev), production용(next start) default values. git에 올린다.env: 모든 환경을 커버하는 default values. git에 올린다.page는
pages 디렉토리에 존재하는 소스파일명으로 자동 route 설정됨
pages/about.js를 만들면 browser에서 /about 이란 경로로 접근된다function About() {
return <div>About</div>
}
export default About
pages/posts/[id].js - path parameter도 지원한다
[, ]가 들어가는게 생소하지만 된다hydration 과정이라고 칭함next build)에 html을 생성해 버린다getStaticProps, getStaticPaths 사용getServerSideProps를 정의하면 된다