Perplexica/docs/typescript-snippets.md

3.2 KiB

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*',
}