Jos*_*lez 2 compiler-errors typescript
打字稿错误“找不到名称'require'。并且找不到名称'process'。” 即使已经在其编译器选项中定义了参数“ moduleResolution”:“ node”。
以下是我当前的tsconfig.json
{
"compilerOptions": {
"target": "es2015",
"lib": ["es2015", "es6"],
"types": ["reflect-metadata"],
"moduleResolution": "node",
"module": "commonjs",
"rootDir": "src",
"outDir": "./build",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"sourceMap": true,
"declaration": false
},
"include": [
"src/**/*"
],
"exclude": [
"node_modules"
]
Run Code Online (Sandbox Code Playgroud)
}
默认情况下,不捆绑Node.js标准库的类型定义。您需要通过@types/node软件包自己安装它们:
npm install --save @types/node
Run Code Online (Sandbox Code Playgroud)
该moduleResolution选项控制编译器如何处理import语句,并且与Node.js标准库无关。
要修复“找不到名称'require'”错误,您还应该将所有CommonJS导入转换为使用TypeScript导入语法:
// Before
var process = require('process');
// After
import process = require('process');
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参见TypeScript手册的“ 从JavaScript迁移”部分。
| 归档时间: |
|
| 查看次数: |
3392 次 |
| 最近记录: |