Biorąc pod uwagę następujące struktury katalogów:Dlaczego nie można znaleźć modułów wyszukiwania TypeScript zainstalowanych w 'node_modules'?
{project}/
|-- node_modules/
| |-- lodash
|-- src/
| |-- index.ts
|-- lib/ (output)
| |-- index.js
| |-- index.d.ts
|-- package.json
|-- tsconfig.json
Podczas wbudowanych funkcji wyjściowych poprawnie; komenda tsc
twierdzi, że nie może rozwiązać modułu lodash kiedy użyć dowolnego z poniższych:
import _ from "lodash";
import _ = require("lodash");
import * as _ from "lodash";
Wewnątrz mojego „” tsconfig.json pliku mam włączone następujące rzeczy:
...
"target": "es6",
"sourceMap": true,
"module": "commonjs",
"moduleResolution": "node",
...
Ale mimo to nadal nie znajduje żadnego z modułów, które są zainstalowane przy użyciu npm.
Czy brakuje mi czegoś, co jest wymagane, aby TypeScript znalazł te moduły?
Rozumiem, że bez pliku definicji TypeScript TypeScript nie jest w stanie zapewnić dodatkowych kontroli typów; jednak z pewnością powinno to być domyślnie ustawione na prawo typu any
?
Sprawdź, czy masz Typescript 1,6 lub wyższy. Oto [dobra dyskusja] (https://medium.com/@mweststrate/how-to-create-strongly-typed-npm-modules-1e1bda23a7f4#.ci86154ph) tego, jak "działało" przed 1.6 i jak to działa po. –