mirror of
https://github.com/vercel/next-learn.git
synced 2026-06-16 04:11:38 +00:00
Add example
This commit is contained in:
6
example/components/Date.js
Normal file
6
example/components/Date.js
Normal file
@@ -0,0 +1,6 @@
|
||||
import { parseISO, format } from 'date-fns'
|
||||
|
||||
export default function Date({ dateString }) {
|
||||
const date = parseISO(dateString)
|
||||
return <time dateTime={dateString}>{format(date, 'LLLL d, yyyy')}</time>
|
||||
}
|
||||
64
example/components/Layout.js
Normal file
64
example/components/Layout.js
Normal file
@@ -0,0 +1,64 @@
|
||||
import Head from 'next/head'
|
||||
import styles from './Layout.module.css'
|
||||
import utilStyles from '../styles/utils.module.css'
|
||||
import Link from 'next/link'
|
||||
|
||||
const name = 'Shu Uesugi'
|
||||
export const siteTitle = 'Next.js Sample Website'
|
||||
|
||||
const Page = ({ children, home }) => (
|
||||
<div className={styles.container}>
|
||||
<Head>
|
||||
<link rel="icon" href="/favicon.ico" />
|
||||
<meta
|
||||
name="description"
|
||||
content="Learn how to build a personal website using Next.js"
|
||||
/>
|
||||
<meta
|
||||
property="og:image"
|
||||
content={`https://og-image.now.sh/${encodeURI(
|
||||
siteTitle
|
||||
)}.png?theme=light&md=0&fontSize=75px&images=https%3A%2F%2Fassets.zeit.co%2Fimage%2Fupload%2Ffront%2Fassets%2Fdesign%2Fnextjs-black-logo.svg`}
|
||||
/>
|
||||
</Head>
|
||||
<header className={styles.header}>
|
||||
{home ? (
|
||||
<>
|
||||
<img
|
||||
src="/images/profile.jpg"
|
||||
className={`${styles.headerHomeImage} ${utilStyles.borderCircle}`}
|
||||
alt={name}
|
||||
/>
|
||||
<h1 className={utilStyles.heading2Xl}>{name}</h1>
|
||||
</>
|
||||
) : (
|
||||
<>
|
||||
<Link href="/">
|
||||
<a>
|
||||
<img
|
||||
src="/images/profile.jpg"
|
||||
className={`${styles.headerImage} ${utilStyles.borderCircle}`}
|
||||
alt={name}
|
||||
/>
|
||||
</a>
|
||||
</Link>
|
||||
<h2 className={utilStyles.headingLg}>
|
||||
<Link href="/">
|
||||
<a className={utilStyles.colorInherit}>{name}</a>
|
||||
</Link>
|
||||
</h2>
|
||||
</>
|
||||
)}
|
||||
</header>
|
||||
<main>{children}</main>
|
||||
{!home && (
|
||||
<div className={styles.backToHome}>
|
||||
<Link href="/">
|
||||
<a>← Back to home</a>
|
||||
</Link>
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
)
|
||||
|
||||
export default Page
|
||||
25
example/components/Layout.module.css
Normal file
25
example/components/Layout.module.css
Normal file
@@ -0,0 +1,25 @@
|
||||
.container {
|
||||
max-width: 36rem;
|
||||
padding: 0 1rem;
|
||||
margin: 3rem auto 6rem;
|
||||
}
|
||||
|
||||
.header {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.headerImage {
|
||||
width: 6rem;
|
||||
height: 6rem;
|
||||
}
|
||||
|
||||
.headerHomeImage {
|
||||
width: 8rem;
|
||||
height: 8rem;
|
||||
}
|
||||
|
||||
.backToHome {
|
||||
margin: 3rem 0 0;
|
||||
}
|
||||
Reference in New Issue
Block a user