requireの代わりにimportを使用してエクスプレスアプリケーションを作成する方法



How Create An Express Application With Import Instead Require



解決:

TypeScriptには、関数またはその他のカスタムオブジェクトを全体として(デフォルトのエクスポートとしてではなく)エクスポートするモジュールを処理するための特別なインポート構文があります。

import {Request、Response、Application} from'express '; import express = require( 'express'); var app:Application = express(); app.get( '/'、function(req:Request、res:Response){res.send( 'Hello World')}); app.listen(3000);

または、TypeScriptコンパイラオプションを使用して、インポートされたモジュールを変更し、デフォルトのエクスポートを使用することもできます。



// tsconfig.json {'compilerOptions':{'allowSyntheticDefaultImports':true、/ *デフォルトのエクスポートなしでモジュールからのデフォルトのインポートを許可します。これはコードの発行には影響せず、タイプチェックするだけです。 * / 'esModuleInterop':true、/ *すべてのインポートの名前空間オブジェクトの作成を介して、CommonJSモジュールとESモジュール間のエミット相互運用性を有効にします。 'allowSyntheticDefaultImports'を意味します。 * /}}

このデフォルトのインポートを使用してインポートします。

'express'からexpressをインポートしますvarapp = express();