在VS代码中debuggingTypescript / Javsacript Mongodb会给出错误:ENOTDIR:不是目录stat

Mac OS 10.12.6,来自brew v8.5.0的节点,用brew安装的npm v5.3.0,Visual Studio Code v1.16.1,tsc 2.4.1

我正在尝试运行以下代码片段:

import { MongoClient } from 'mongodb'; MongoClient.connect('<url>', (err, db) => console.log(err) ); 

在运行带节点的程序的bashterminal中, 给出预期的结果 :null。


但在Visual Studio代码中,使用以下debuggingconfiguration:

 "type": "node", "request": "launch", "name": "Launch Program", "program": "${workspaceRoot}/src/17_Mongo.js" 

给出以下错误:

 Error: ENOTDIR: not a directory, stat '/Users/alexbjorlig/Documents/SolidFlow/streamRD/node_modules/mongodb-core/index.js/package.json' at fs.existsSync (fs.js:329:13) at find_package_json (/Users/alexbjorlig/Documents/SolidFlow/streamRD/node_modules/require_optional/index.js:14:9) at find_package_json_with_name (/Users/alexbjorlig/Documents/SolidFlow/streamRD/node_modules/require_optional/index.js:34:20) at require_optional (/Users/alexbjorlig/Documents/SolidFlow/streamRD/node_modules/require_optional/index.js:69:13) at Object.<anonymous> (/Users/alexbjorlig/Documents/SolidFlow/streamRD/node_modules/mongodb-core/index.js:6:20) at Module._compile (module.js:569:30) at Object.Module._extensions..js (module.js:580:10) at Module.load (module.js:503:32) at tryModuleLoad (module.js:466:12) at Function.Module._load (module.js:458:3) 

要解决这个问题,我试过了:

  • 升级节点和npm
  • 从头开始创buildpackage.json,只用mongodb作为依赖项

我能从这里尝试什么? 这个问题可能重复,但更新的build议并没有帮助我。

编辑1:我的package.json文件:

 "dependencies": { "mongodb": "^2.2.31" } 

编辑-2:我的tscconfig.json:

 { "compileOnSave": true, "compilerOptions": { "target": "es5", "lib": [ "es2016", "dom" ], "module": "commonjs", "watch": true, "moduleResolution": "node", "sourceMap": true }, "exclude": [ "node_modules", "functions/node_modules", "node_modules" ] 

}