Lea*_*yes 8 npm typescript tsconfig
给定以下目录结构:
{project}/
|-- node_modules/
| |-- lodash
|-- src/
| |-- index.ts
|-- lib/ (output)
| |-- index.js
| |-- index.d.ts
|-- package.json
|-- tsconfig.json
Run Code Online (Sandbox Code Playgroud)
虽然内置输出功能正常; 该tsc命令抱怨当我使用以下任何一项时它无法解析lodash模块:
import _ from "lodash";
import _ = require("lodash");
import * as _ from "lodash";
Run Code Online (Sandbox Code Playgroud)
在我的'tsconfig.json'文件中,我包含了以下内容:
...
"target": "es6",
"sourceMap": true,
"module": "commonjs",
"moduleResolution": "node",
...
Run Code Online (Sandbox Code Playgroud)
但尽管如此,它仍然没有找到使用npm安装的任何模块.
我错过了使TypeScript找到这些模块所需的东西吗?
我意识到没有TypeScript定义文件,TypeScript无法提供额外的类型检查; 但是,当然这些应该默认为any类型对吗?
由于lodash在node_modules/lodash文件夹中没有定义文件,因此无效.您必须使用typings下载它或使用环境声明而不是导入:
declare var _: any;
Run Code Online (Sandbox Code Playgroud)
对于node.js,您必须使用:
var _ = require('lodash');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6195 次 |
| 最近记录: |