Với cấu trúc thư mục sau:Tại sao TypeScript không thể tìm thấy các mô-đun được cài đặt vào 'node_modules'?
{project}/
|-- node_modules/
| |-- lodash
|-- src/
| |-- index.ts
|-- lib/ (output)
| |-- index.js
| |-- index.d.ts
|-- package.json
|-- tsconfig.json
Trong khi các chức năng đầu ra được xây dựng đúng cách; lệnh tsc
phàn nàn rằng nó không thể giải quyết các module lodash khi tôi sử dụng bất kỳ những điều sau đây:
import _ from "lodash";
import _ = require("lodash");
import * as _ from "lodash";
Bên trong 'tsconfig.json' tập Tôi đã bao gồm tôi những điều sau đây:
...
"target": "es6",
"sourceMap": true,
"module": "commonjs",
"moduleResolution": "node",
...
Nhưng bất chấp điều này vẫn không tìm thấy bất kỳ mô-đun nào được cài đặt bằng npm.
Tôi có thiếu thứ gì đó cần thiết để làm cho TypeScript tìm thấy các mô-đun này không?
Tôi nhận ra rằng không có tệp định nghĩa TypeScript TypeScript không thể cung cấp kiểm tra loại bổ sung; Tuy nhiên, chắc chắn những điều này chỉ nên mặc định cho loại any
phải không?
Hãy chắc chắn rằng bạn có nguyên cảo 1.6 hoặc cao hơn. Đây là một [thảo luận tốt] (https://medium.com/@mweststrate/how-to-create-strongly-typed-npm-modules-1e1bda23a7f4#.ci86154ph) về cách nó "làm việc" trước 1.6 và cách nó hoạt động sau. –