Introduction
Next JS/TS Snipets for VScode
Designed to be simple, short and powerfull
Table of Contents
Explanation
The snippets are a combination of:
n
next
np
next page
ssp
server side props
sp
static props
spth
static paths
Contributing
Feel free to open a pull request if you to add a snippet, suggest a change, fix a bug or anything else.
Typescript snippets
np
- nextPage
npssp
- nextPageServerSideProps
npsp
- nextPageStaticProps
npspth
- nextPageStaticPaths
nssp
- nextServerSideProps
nsp
- nextStaticProps
nspth
- nextStaticPaths
nip
- nextInitialProps
nimg
- nextImage
napp
- nextApp
ndoc
- nextDocument
napi
- nextApi
nmid
- nextMiddleware
np
- nextPage
import { NextPage } from 'next'
interface Props {}
const FileName: NextPage<Props> = ({}) => {
return <div></div>
}
export default FileName
npssp
- nextPageServerSideProps
import { NextPage, GetServerSideProps } from 'next'
interface Props {}
const FileName: NextPage<Props> = ({}) => {
return <div></div>
}
export const getServerSideProps: GetServerSideProps = async (ctx) => {
return {
props: {}
}
}
export default FileName
npsp
- nextPageStaticProps
import { NextPage, GetStaticProps } from 'next'
interface Props {}
const FileName: NextPage<Props> = ({}) => {
return <div></div>
}
export const getStaticProps: GetStaticProps = async (ctx) => {
return {
props: {},
}
}
export default FileName
npspth
- nextPageStaticPaths
import { NextPage, GetStaticPaths } from 'next'
interface Props {}
const FileName: NextPage<Props> = ({}) => {
return <div></div>
}
export const getStaticPaths: GetStaticPaths = async () => {
return {
paths: [],
fallback: false,
}
}
export default FileName
nssp
- nextServerSideProps
export const getServerSideProps: GetServerSideProps = async (ctx) => {
return {
props: {}
}
}
nsp
- nextStaticProps
export const getStaticProps: GetStaticProps = async (ctx) => {
return {
props: {},
}
}
nspth
- nextStaticPaths
export const getStaticPaths: GetStaticPaths = async () => {
return {
paths: [],
fallback: false,
}
}
nip
- nextInitialProps
FileName.getInitialProps = async (ctx) => {
return {
}
}
nimg
- nextImage
<Image src="" alt="" />
napp
- nextApp
import type { AppProps } from 'next/app'
export default function MyApp({ Component, pageProps }: AppProps) {
return <Component {...pageProps} />
}
ndoc
- nextDocument
import Document, { Html, Head, Main, NextScript, DocumentContext } from 'next/document'
class MyDocument extends Document {
static async getInitialProps(ctx: DocumentContext) {
const initialProps = await Document.getInitialProps(ctx)
return { ...initialProps }
}
render() {
return (
<Html>
<Head />
<body>
<Main />
<NextScript />
</body>
</Html>
);
}
}
export default MyDocument
napi
- nextApi
import type { NextApiRequest, NextApiResponse } from 'next'
interface Data {}
export default async function handler(req: NextApiRequest, res: NextApiResponse<Data>) {
}
nmid
- nextMiddleware
import { NextResponse } from 'next/server'
import type { NextRequest } from 'next/server'
export async function middleware(request: NextRequest) {
}
export const config = {
matcher: '/about/:path*',
}
Javascript snippets
np
- nextPage
npssp
- nextPageServerSideProps
npsp
- nextPageStaticProps
npspth
- nextPageStaticPaths
nssp
- nextServerSideProps
nsp
- nextStaticProps
nspth
- nextStaticPaths
nip
- nextInitialProps
nimg
- nextImage
napp
- nextApp
ndoc
- nextDocument
napi
- nextApi
nmid
- nextMiddleware
np
- nextPage
const FileName = ({}) => {
return <div></div>
}
export default FileName
npssp
- nextPageServerSideProps
const FileName = ({}) => {
return <div></div>
}
export const getServerSideProps = async (ctx) => {
return {
props: {}
}
}
export default FileName
npsp
- nextPageStaticProps
const FileName = ({}) => {
return <div></div>
}
export const getStaticProps = async (ctx) => {
return {
props: {},
}
}
export default FileName
npspth
- nextPageStaticPaths
const FileName = ({}) => {
return <div></div>
}
export const getStaticPaths = async () => {
return {
paths: [],
fallback: false,
}
}
export default FileName
nssp
- nextServerSideProps
export const getServerSideProps = async (ctx) => {
return {
props: {}
}
}
nsp
- nextStaticProps
export const getStaticProps = async (ctx) => {
return {
props: {},
}
}
nspth
- nextStaticPaths
export const getStaticPaths = async () => {
return {
paths: [],
fallback: false,
}
}
nip
- nextInitialProps
FileName.getInitialProps = async (ctx) => {
return {
}
}
nimg
- nextImage
<Image src="" alt="" />
napp
- nextApp
export default function MyApp({ Component, pageProps }) {
return <Component {...pageProps} />
}
ndoc
- nextDocument
import Document, { Html, Head, Main, NextScript } from 'next/document'
class MyDocument extends Document {
static async getInitialProps(ctx) {
const initialProps = await Document.getInitialProps(ctx)
return { ...initialProps }
}
render() {
return (
<Html>
<Head />
<body>
<Main />
<NextScript />
</body>
</Html>
);
}
}
export default MyDocument
napi
- nextApi
export default async function handler(req, res) {
}
nmid
- nextMiddleware
import { NextResponse } from 'next/server'
export async function middleware(request) {
}
export const config = {
matcher: '/about/:path*',
}