진짜 근데 NEXT왜 배우는지 몰랐는데, 짱 편함.. 핵 편해,,
404 따로 안 지정해주고, pages안에 404.js 생성하기만 하면 바로 이게 404 page가 됨.. 짱 편해,,
// pages/404.js import Layout from "../components/Layout"; import { FaExclamationTriangle } from "react-icons/fa"; import Link from "next/link"; import styles from "../styles/404.module.css"; export default function NotFoundPage() { return ( <Layout title="Page Not a Found"> <div className={styles.error}> <h1> <FaExclamationTriangle /> 404 </h1> <h4>Sorry, there is nothing here</h4> <Link href="/">Go Back Home</Link> </div> </Layout> ); }
Tip!
◾ react-icons 쓸때 react-icons/[fa, fas, ai]에서 불러와서 바로 아이콘 이름만 import해서 쓸 수 있음. 예전에 어케 썼는지 까먹었는데 먼가 새로 배운 느낌임 ㅎㅎㅎㅎ
이렇게 404 페이지만 생성해주면 pages에 없는 경로에 접근하면 내가 생성한 404페이지가 보여짐!
◾ jsconfig.json이란?
//jsconfig.json { "compilerOptions": { "baseUrl": ".", "paths": { "@/components/*": ["components/*"], "@/styles/*": ["styles/*"] } } }
상대 경로 이기때문에 ../../ 이너무 많으면 복잡하고 안예쁨.
이렇게 파일경로가 자동생성 됨!
Tip! 이미지 불러오기
public에 박제시켜 놓고 필요할 때 불러서 쓰면 됨. background 일때.
이미지로 사용할 때는
import ProfileImage from './public/image/user1.jpg'
로 사용하면 됨.
//components/Showcase.js import styles from "@/styles/Showcase.module.css"; export default function Showcase() { return ( <div className={styles.showcase}> <h1>Welcome To The Party</h1> <h2>Find the hottest DJ Events</h2> </div> ); }
Layout.js에도 Showcase.js 추가해주기
//components/Layout.js export default function Layout({ title, keyword, description, children }) { const router = useRouter(); return ( <div> <Head> <title>{title}</title> <meta name="description" content={description} /> <meta name="keywords" content={keyword} /> </Head> <Header /> {router.pathname === "/" && <Showcase />} <div className={styles.container}>{children}</div> <Footer /> </div> );
다음 포스팅은 API 불러오는거 할꺼임!