ねこじゃすり
猫を魅了する魔法の装備品!
Anker PowerCor
旅行には必須の大容量モバイルバッテリー!
【最新機種】GoPro hero11 Black
最新機種でVlogの思い出を撮影しよう!
[ノースフェイス] THE NORTH FACE メンズ アウター マウンテンライトジャケット
防水暴風で耐久性抜群なので旅行で大活躍です!
モンスターエナジー 355ml×24本 [エナジードリンク]
脳を活性化させるにはこれ!
Bauhutte ( バウヒュッテ ) 昇降式 L字デスク ブラック BHD-670H-BK
メインデスクの横に置くのにぴったりなおしゃれな可動式ラック!
BANDAI SPIRITS ULTIMAGEAR 遊戯王 千年パズル 1/1スケール
もう一人の僕を呼び覚ませ!!
スポンサーリンク
依存ライブラリでTypeScriptエラーが発生
TypeScriptを利用して開発をする際に、様々なライブラリを利用することになると思います。
その際に、依存ライブラリ側でTypeScriptのエラーが出る事があります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
ERROR in /Users/blogenist/sample/node_modules/canvas/types/index.d.ts 4:26 Cannot find module 'stream'. 2 | /// <reference lib="dom" /> 3 | > 4 | import { Readable } from 'stream' | ^ 5 | 6 | export interface PngConfig { 7 | /** Specifies the ZLIB compression level. Defaults to 6. */ ERROR in /Users/blogenist/sample/node_modules/canvas/types/index.d.ts 90:41 Cannot find name 'Buffer'. Do you need to install type definitions for node? Try `npm i @types/node` and then add `node` to the types field in your tsconfig. 88 | * SVG. 89 | */ > 90 | toBuffer(cb: (err: Error|null, result: Buffer) => void): void | ^ 91 | toBuffer(cb: (err: Error|null, result: Buffer) => void, mimeType: 'image/png', config?: PngConfig): void 92 | toBuffer(cb: (err: Error|null, result: Buffer) => void, mimeType: 'image/jpeg', config?: JpegConfig): void |
今回の例でいうと、stream
やBuffer
など、Node.jsのコアモジュールに対するエラーです。
自分で追加しているわけではないのでどうすれば良いのかと悩みがちですが、実はとても簡単にエラーを消す事が出来るのでやり方をご紹介します。
手順
tsconfig.jsonのtypesに追加
解決方法は、tsconfig.json
のcompilerOptions.types
に「node
」を一行追加するだけです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
{ "compilerOptions": { ... (略) ... "types": [ "webpack-env", "node" // 追加 ], ... (略) ... } |
たったこれだけでTypeScriptのコンパイルエラーが出なくなります。
終わりに
以上のように一瞬で解決出来るエラーとなっています。
同じような現象でお困りの方は是非こちらを試してみてください♪