blog.euxn.me

TypeScript + eslint で importno-unresolved が出る場合の2つの対処法

2017-11-10 Fri.

eslint の plugin:import/errors を extend している場合に TypeScript を使用していると、拡張子 .ts .tsx が解釈されず、 resolve されないという問題が発生します。

README にある import/parserseslint-typescript-parser を指定することでは、拡張子解決には影響されないようです。

ぱっと思いつく方法では、 eslint-import-resolver-typescript のようなものを使えば良さそうですが、実際に存在するものは DL も star も少ないので不安なので、別の方法で解決します。

1. eslint-import-resolver-node を使用し、オプションとして拡張子を指定する

この resolver は es6coffee 等も解決できるよう、オプションで拡張子が指定できるようになっています。

1settings:
2 import/resolver:
3 node:
4 extensions:
5 - .ts
6 - .tsx

2. eslint-import-resolver-webpack を使用し、resolve の設定を流用する

プロジェクトがフロントエンドの場合など、 webpack を使用していてそちらに拡張子解決についての記載があれば、それを eslint での resolve に流用できます。

1settings:
2 import/resolver: webpack

もしくは、

1settings:
2 import/resolver:
3 webpack:
4 config: "webpack.dev.config.js"

というように config ファイルを指定することもできます。 Webpack プロジェクトの場合、後者の方が DRY になるので良さそうです。

Other Works
2024-12-01 Sun.
OpenAPI Spec を出力できる DSL、TypeSpec の実践例
- ドワンゴ教育サービス開発者ブログ

2024-11-16 Sat.
型付き API リクエストを実現するいくつかの手法とその選択
- TSKaigi Kansai 2024

2024-09-10 Tue.
corepack が標準同梱じゃなくなる未来、 mise でパッケージマネージャを管理する
- Zenn

2024-09-10 Tue.
言語環境の管理は *env や *vm を超えて、 mise へ
- Zenn

2024-06-28 Fri.
TypeSpec を使い倒してる
- Kyoto.js 22

2024-05-11 Sat.
Powerfully Typed TypeScript
- TSKaigi 2024

2024-05-10 Fri.
pnpm の node_modules を探検して理解しよう
- ドワンゴ教育サービス開発者ブログ

2024-03-17 Sun.
neverthrow で局所的に Result 型を使い、 try-catch より安全に記述する
- Zenn

2023-12-20 Wed.
レガシーブラウザ向けのビルドオプションを剪定する
- ドワンゴ教育サービス開発者ブログ

2023-05-26 Fri.
Next.js で dynamic import を使い Client だけで動かす Component を実現する
- Zenn

2023-05-02 Tue.
Node.js でファイル名から拡張子を取り除く/取り出すために path.parse を使う
- Zenn

2023-02-27 Mon.
WSL2 で外部からアクセス可能にするために bridge mode を有効にする
- Zenn

2023-01-26 Thu.
init.vim & dein から init.lua & lazy.nvim へ、シンプル設定で移行した
- Zenn

2023-01-13 Fri.
kindle の本をブクログ形式の csv でエクスポートする@2023初春
- Zenn

2023-01-10 Tue.
自宅サーバの移設に際して docker から nerdctl に移行した
- Zenn

2023-01-10 Tue.
自宅サーバを rootless に移行した際のトラブル対応
- Zenn

2021-11-11 Thu.
並列実行した Promise で throw されても全てハンドルしたいときの方法(allSettled, finally, etc...)
- Zenn