ts-migrateでCreate React Appから作ったReactアプリを雑にTypeScript化する
「React #2 Advent Calendar 2020」3日目の記事です。 ts-migrate を使うと、JSをTSに変換してくれます。 なので過去にJSで書いたReactアプリをTS化したい時に、とりあえず試し […]
「React #2 Advent Calendar 2020」3日目の記事です。
ts-migrate を使うと、JSをTSに変換してくれます。
なので過去にJSで書いたReactアプリをTS化したい時に、とりあえず試してみるとなかなか便利です。
目次
準備
Create React Appの場合は、以下の2ファイルを別途用意しておきましょう。
- tsconfig.json
- src/react-app-env.d.ts
部品取り用に1つアプリを作って、そこからファイルをとってくれば良いと思います。
$ npx create-react-app test --typescript
$ mv test/tsconfig.json ./
$ mv test/src/react-app-env.d.ts ./src
必要なライブラリを追加する
主に型情報系ですが、インストールしておきましょう。
$ npm i -D @types/react @types/react-dom @types/node @types/jest typescript
Run ts-migrate
あとはts-migrateを実行していきます。まずはjs/jsx を ts/tsxにリネームします。
$ npx ts-migrate rename ./
その後TypeScriptに変換しましょう。
$ npx ts-migrate migrate ./
エラーの解消
このツールを使うと、TypeScriptでエラーが出た箇所には@ts-expect-error
が自動で付与されています。
npm run build
やnpm start
などで動作確認しつつ、@ts-expect-error
を解消していくように進めていくと良いでしょう。

ブックマークや限定記事(予定)など
WP Kyotoサポーター募集中
WordPressやフロントエンドアプリのホスティング、Algolia・AWSなどのサービス利用料を支援する「WP Kyotoサポーター」を募集しています。
月額または年額の有料プランを契約すると、ブックマーク機能などのサポーター限定機能がご利用いただけます。
14日間のトライアルも用意しておりますので、「このサイトよく見るな」という方はぜひご検討ください。