yarn create next-app直後にTypescriptを導入する

yarn create next-app直後にTypescriptを導入する
公開日時

Start a Next.js project with TypeScript, Eslint and Prettierを参考にTypescriptを導入。

create next-app後に生成される以下のjsファイルをts(tsx)に変更する。

  • pages/_app.tsx
import React from 'react'
import { AppProps } from 'next/app'
import '../styles/globals.css'

function MyApp({ Component, pageProps }: AppProps): JSX.Element {
  return <Component {...pageProps} />
}

export default MyApp
  • pages/index.tsx
import React from 'react'
import Head from 'next/head'
import styles from '../styles/Home.module.css'

const Home: React.FunctionComponent = () => {
  return (
    <div className={styles.container}>
  )
}
export default Home
  • pages/api/hello.ts
import { NextApiRequest, NextApiResponse } from 'next'

type Data = {
  name: string
}

export default (req: NextApiRequest, res: NextApiResponse<Data>): void => {
  res.statusCode = 200
  res.json({ name: 'John Doe' })
}

これで自動でLintを効かせつつTypescriptで開発を進めていける。

参考


Related #next.js

SharedArrayBuffer updates in Android Chrome 88 and Desktop Chrome 92

クロスオリジン分離対応を実施

react-hook-formとReact Datepickerを組み合わせる

Hook FormのControllerを使う

Next.jsで生成したサイトで特定のページのみnoindexを設定する

タグに紐づく記事一覧ページはnoindexにした

Next.jsでAdsenseタグを埋め込んだら Only one AdSense head tag supported per page エラーが発生

Only one AdSense head tag supported per page. The second tag is ignored.