こいつの型を当てるときの作業工程について振り返っておく。
事前準備
- 現バージョンの挙動を確認する
- テストを確認する
typescriptの導入
- tsconfigを入れる
- package.jsonでこれまでのフローが壊れないようにscriptsの中身だけ記述する
- tslintを導入する。そもそもlinterが走っていないので、
tslint:recommended
で通す - ひたすらanyか
ts-ignore
を当てて、コンパイルが通るまで頑張る - 通ってから、
require
をimport
に書き換える shallow-variable
を潰すyarn upgrade-interactive
で最新まで持っていく- まだ
any
なので、事前準備で確認した項目が通るように型を当てていく - 型を
types.ts
に一時的に集約していく - objectのkeyをmapped typesで展開できるように工夫する
- ひたすら型を解決していく
- ライブラリ系で躓いたらRelease Noteを熟読する
いまは12番目