2020-02-15 19:01:10 +01:00
|
|
|
import { useRouter } from 'next/router'
|
|
|
|
|
2020-02-27 18:57:39 +01:00
|
|
|
export async function getStaticProps({ params: { slug } }) {
|
2020-02-15 19:01:10 +01:00
|
|
|
if (slug[0] === 'delayby3s') {
|
|
|
|
await new Promise(resolve => setTimeout(resolve, 3000))
|
|
|
|
}
|
|
|
|
|
2020-01-20 22:44:50 +01:00
|
|
|
return {
|
|
|
|
props: {
|
|
|
|
slug,
|
|
|
|
},
|
|
|
|
revalidate: 1,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-02-27 18:57:39 +01:00
|
|
|
export async function getStaticPaths() {
|
2020-02-08 04:09:54 +01:00
|
|
|
return {
|
|
|
|
paths: [
|
|
|
|
{ params: { slug: ['first'] } },
|
|
|
|
'/catchall/second',
|
|
|
|
{ params: { slug: ['another', 'value'] } },
|
|
|
|
'/catchall/hello/another',
|
|
|
|
],
|
2020-02-27 13:23:28 +01:00
|
|
|
fallback: true,
|
2020-02-08 04:09:54 +01:00
|
|
|
}
|
2020-01-20 22:44:50 +01:00
|
|
|
}
|
|
|
|
|
2020-02-15 19:01:10 +01:00
|
|
|
export default ({ slug }) => {
|
|
|
|
const { isFallback } = useRouter()
|
|
|
|
if (isFallback) {
|
|
|
|
return <p id="catchall">fallback</p>
|
|
|
|
}
|
2020-02-24 18:19:58 +01:00
|
|
|
return <p id="catchall">Hi {slug.join(' ')}</p>
|
2020-02-15 19:01:10 +01:00
|
|
|
}
|