问题
My question is why this error shown?
ERROR in src/app/p2p/p2p.component.ts(14,16): error TS2580: Cannot find name 'require'. Do you need to install type definitions for node? Try
npm i @types/node
.
I have install
@types/node
in app/tsconfig.app.json have add
"types": [
"node"
],
"typeRoots": [
"../node_modules/@types"
]
but there is error cannot find 'require'
回答1:
The problem also remained after adding it to my tsconfig.json, but additionaly adding the following line to tsconfig.app.json resolved it for me:
{
"compilerOptions": {
"types": ["node"]
}
So be sure to add this into both files ./tsconfig.json AND ./src/tsconfig.app.json and it should work.
回答2:
Add the following settings to src/tsconfig.app.json
{
"compilerOptions": {
"types": ["node"]
}
}
回答3:
Type node is missing
install @types/node :
npm install --save @types/node
or
yarn add @types/node
edit your src/tsconfig.json
adding:
{
"compilerOptions": {
"types": ["node"]
}
}
回答4:
Like some other folks, I, too, had added node to the 'types' array in tsconfig and for some reason it made no difference. Knowing full well that this is a hack, here's how I resolved it:
Add this line anywhere above the 'require' statement:
declare const require: any;
This is not a real fix, but I don't have the time to battle with this type of plumbing problem right now. I'll come back and deal with it later (or probably not, but that's OK, too)
回答5:
check tsconfig.json
too. you need to add the same settings there too.
回答6:
Its all because typeScript is not aware of the require keyword so do add a line making typescript aware of require keyword
once its compiled to javascript it knows the require word better and make the work done
declare var require: any;
const pokemon = require('src/assets/pokedex.json');
来源:https://stackoverflow.com/questions/53115665/cannot-find-name-require-in-angular-7typescript-3-1-3