howdylikes

Google Developersってわかりづらいよね

Webpack + TypeScriptのTS2304: Cannot find name 'require'エラーの解決法

Webpackでモジュール読み込むときにrequire使いますがjsからなら問題はないですがTypeScriptからだとコンパイルエラーになります。
指定方法がTypeScript上おかしいのでimport文でもだめだと思われます。

require('jade!./app.jade')();
// ERROR in ./src/ts/components/app/app.ts
// (14,25): error TS2304: Cannot find name 'require'.

その場合、declare文を記載してrequireという関数があると認識させればOKです。 requireのあるファイル全てに書くのはあれなので共通のd.ts作ってそこをreference pathで指定です。

declare function require(string): any;

参考サイト

github.com