问题描述
我有一个打字稿项目,该项目可以正常编译并运行,但是现在出现错误
每当我尝试运行节点时,ReferenceError: require is not defined
。
我不能完全确定这是一个Typescript问题,因为当我使用require
运行一个简单的普通js文件时,会遇到相同的错误。我有点困惑,因为在使用node index.js
时应该定义require是吗?
tsconfig.json
:
{
"compilerOptions": {
"target": "es5","module": "commonjs","esModuleInterop": true,"moduleResolution": "node","noImplicitAny": false,"removeComments": true,"allowSyntheticDefaultImports": true,"outDir": "dist/","sourceMap": false
},"include": ["src/"],"exclude": ["node_modules","**/*.spec.ts"]
}
解决方法
问题是我在package.json
中启用了对ES6模块的实验性支持。
从"type": "module"
中删除选项package.json
解决了我所有的问题。