我的问题是为什么显示此错误?
src / app / p2p / p2p.component.ts(14,16)中的ERROR:错误TS2580:无法 找到名称“ require”。您是否需要为节点安装类型定义? 尝试
npm i @types/node
。
我已经安装
@types/node
in app/tsconfig.app.json have add
"types": [
"node"
],
"typeRoots": [
"../node_modules/@types"
]
但是有错误找不到'require'
答案 0 :(得分:8)
缺少类型节点
安装@ types / node:
npm install --save @types/node
或
yarn add @types/node
编辑您添加的src/tsconfig.json
:
{
"compilerOptions": {
"types": ["node"]
}
}
答案 1 :(得分:5)
将问题添加到tsconfig.json后,问题仍然存在,但是另外将以下行添加到tsconfig.app.json中为我解决了该问题:
{
"compilerOptions": {
"types": ["node"]
}
因此,请确保将其添加到两个文件 ./ tsconfig.json 和 ./ src / tsconfig.app.json 中,并且应该可以正常工作。
答案 2 :(得分:3)
将以下设置添加到src / tsconfig.app.json
{
"compilerOptions": {
"types": ["node"]
}
}
答案 3 :(得分:1)
我也像其他人一样,在tsconfig的'types'数组中添加了节点,由于某种原因,它没有任何区别。完全了解这是一种黑客攻击,这就是我的解决方法:
在“ require”语句上方的任意位置添加以下行:
declare const require: any;
这不是真正的解决方法,但是我现在没有时间与这种类型的管道问题作斗争。我待会儿再处理(或者可能不会,但是也可以)
答案 4 :(得分:0)
也检查tsconfig.json。您也需要在其中添加相同的设置。
答案 5 :(得分:0)
这都是因为typeScript不知道require关键字,所以 确实添加了使打字稿知道require关键字的行
一旦将其编译为javascript,它就会更好地了解需求词并完成工作
declare var require: any;
const pokemon = require('src/assets/pokedex.json');