Closed6
TypeScriptの型を定義するファイルってどこに格納するのがいいの
ピン留めされたアイテム
typesディレクトリ
src/
直下にtypes/
ディレクトリを作成してそこに格納するのがよさそう。
my-next-app
|-- public
`-- src
|-- types # ここ
|-- pages
`-- styles
以下の記事が参考になった。
型定義ファイル (.d.ts)
というものがあるみたい。これを作成するのがいいのかしら
と思ったけど、ユースケース的に異なるようだ。
型定義ファイルは主にパッケージを配布するために作成されます。
- 型定義ファイル有り
TypeScriptで書かれたパッケージ
JavaScriptで書かれたパッケージだが.d.tsファイルを同梱している
JavaScriptで提供されるパッケージに型定義ファイルを補完することで、TypeScriptで型の恩恵を受けるためのものという用途のよう。
蛇足
パッケージインストールするときに、@types/~というパッケージを見かける。
これが型定義ファイルのパッケージってこと。
npm install express --save # express本体のインストール
npm install @types/express --save-dev # 型定義ファイルのインストール
蛇足:skipLibCheck
tsconfig.jsonでskipLibCheck
という設定項目がある。
これをtrue
にすると、JavaScriptパッケージへの型定義チェックをスキップする。
以下の記事がわかりやすかったです。
余談
create-next-app
で生成されたtsconfig.jsonをそのまま使ってたんですけど、skipLibCheck: true
がデフォルトで記載されてた。
意図せず、JavaScriptパッケージの型定義チェックをスキップしちゃってましたね。。
とりあえず、対象の設定をコメントアウトして無効化しときました。
tsconfig.json - next.js@v13.4.3
結論:型定義ファイル (.d.ts)
これはJavaScriptパッケージ向けの話なので、本題を解決するものではない。
このスクラップは2023/05/25にクローズされました