在角7(打字稿3.1.3)中找不到名称'require'

ikh*_*ali 16 typescript angular typescript3.0 angular7

我的问题是为什么会出现这个错误?

src/app/p2p/p2p.component.ts(14,16)中的错误:错误TS2580:找不到名称'require'.您是否需要为节点安装类型定义?试试npm i @types/node.

我安装了

 @types/node
in app/tsconfig.app.json have add 
"types": [
    "node" 
  ],
  "typeRoots": [ 
  "../node_modules/@types"
 ]  
Run Code Online (Sandbox Code Playgroud)

但有错误找不到'要求'

Joh*_*kov 19

将问题添加到tsconfig.json后,问题仍然存在,但另外在tsconfig.app.json中添加以下行为我解决了问题:

{
"compilerOptions": {
    "types": ["node"]
}
Run Code Online (Sandbox Code Playgroud)

因此,请确保将其添加到./tsconfig.json./src/tsconfig.app.json这两个文件中,并且应该可以使用。

  • 我发现我可以将“node”添加到“tsconfig.app.json”中的“types”,而无需将其包含在“tsconfig.json”中以及为我编译的项目中。 (5认同)
  • 优胜者!问题是默认的 tsconfig.app.json 有一个 *empty* types 属性,这会删除 tsconfig.json 中的属性。我花了一段时间才解决这个问题 (4认同)
  • 当我将它添加到 ```tsconfig.app.json``` 时,我工作了!非常感谢! (2认同)

Din*_*ule 10

缺少类型节点

install @ types/node:

npm install --save @types/node
Run Code Online (Sandbox Code Playgroud)

要么

yarn add @types/node
Run Code Online (Sandbox Code Playgroud)

编辑你的src/tsconfig.json添加:

{
    "compilerOptions": {
        "types": ["node"]
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 我这样做了,错误仍然存​​在。 (2认同)

Var*_*agi 10

将以下设置添加到 src/tsconfig.app.json

{
  "compilerOptions": {
    "types": ["node"]
  }
}
Run Code Online (Sandbox Code Playgroud)


Tim*_*ter 5

和其他一些人一样,我也将节点添加到 tsconfig 中的“类型”数组中,但由于某种原因,它没有任何区别。完全知道这是一个黑客攻击,我是这样解决的:

将此行添加到“require”语句上方的任意位置: declare const require: any;

这不是真正的解决办法,但我现在没有时间去解决这种类型的管道问题。我稍后会回来处理它(或者可能不会,但这也没关系)