5

TypeScriptのnode_modulesフォルダーにあるノードモジュールをインポートするにはどうすればよいですか?

次のTypeScriptコードをコンパイルしようとすると、エラーメッセージ(「async」という名前は現在のスコープに存在しません)が表示されます。

// Converted from: var async = require('async');
import async = module('async');
4

3 に答える 3

1

定義ファイルを作成し、これを含める必要があります。

module "async" {}

次に、TypeScriptコードにこの定義ファイルへの参照を追加します

///<reference path='definition-file.d.ts' />

import async = module('async');
于 2012-11-14T15:26:38.393 に答える
1

タイプスクリプトフラットアウトの標準の「importblah=require('x')」セマンティクスは、ノードモジュールでは機能しません。

これを回避する最も簡単な方法は、インポートではなく、requireを定義してインターフェースし、明示的に使用することです。

// You can put this in an external blah.d file if you like; 
// remember, interfaces do not emit any code when compiled.
interface qOrm {
    blah:any;
}

declare var require:any;
var qOrm:qOrm = require("../node_modules/q-orm/lib/q-orm");

var x = qOrm.blah;
于 2014-05-15T05:43:51.483 に答える
1
npm install --save-dev @types/async
npm install --save async

そして構文:

import * as async from "async"
于 2017-08-28T05:01:41.983 に答える