10

次のディレクトリ構造があるとします。

{project}/
  |-- node_modules/
  |    |-- lodash
  |-- src/
  |    |-- index.ts
  |-- lib/ (output)
  |    |-- index.js
  |    |-- index.d.ts
  |-- package.json
  |-- tsconfig.json

ビルドされた出力が適切に機能している間。次のいずれかを使用すると、tscコマンドは lodash モジュールを解決できないと不平を言います。

import _ from "lodash";
import _ = require("lodash");
import * as _ from "lodash";

「tsconfig.json」ファイル内に、次のものを含めました。

...

"target": "es6",
"sourceMap": true,
"module": "commonjs",
"moduleResolution": "node",

...

しかし、これにもかかわらず、npm を使用してインストールされたモジュールはまだ見つかりません。

TypeScript にこれらのモジュールを見つけさせるために必要なものがありませんか?

TypeScript 定義ファイルがないと、TypeScript は追加の型チェックを提供できないことを認識しています。ただし、確かにこれらはデフォルトのanyタイプに設定する必要がありますか?

4

1 に答える 1

7

lodash は node_modules/lodash フォルダーに定義ファイルがないため、機能しません。入力を使用してダウンロードするか、インポートの代わりにアンビエント宣言を使用する必要があります。

declare var _: any;

node.js の場合は、次を使用する必要があります。

var _ = require('lodash');
于 2016-03-04T20:15:00.873 に答える