在一个简单的node.js应用中,我既无法连接到本地mongoose数据库,也无法连接到云mongoDB数据库。
下面是错误:
Error: No valid exports main found for 'D:\Documents\code\node-api\node_modules\mongodb-connec
tion-string-url'
←[90m at resolveExportsTarget (internal/modules/cjs/loader.js:625:9)←[39m
←[90m at applyExports (internal/modules/cjs/loader.js:502:14)←[39m
←[90m at resolveExports (internal/modules/cjs/loader.js:551:12)←[39m
←[90m at Function.Module._findPath (internal/modules/cjs/loader.js:657:22)←[3
9m
←[90m at Function.Module._resolveFilename (internal/modules/cjs/loader.js:960
:27)←[39m
←[90m at Function.Module._load (internal/modules/cjs/loader.js:855:27)←[39m
←[90m at Module.require (internal/modules/cjs/loader.js:1033:19)←[39m
←[90m at require (internal/modules/cjs/helpers.js:72:18)←[39m
at Object.<anonymous> (D:\Documents\code\node-api\node_modules\←[4mmongodb←[24m\lib\connec
tion_string.js:6:41)
←[90m at Module._compile (internal/modules/cjs/loader.js:1144:30)←[39m {
code: ←[32m'MODULE_NOT_FOUND'←[39m
}
[nodemon] app crashed - waiting for file changes before starting...下面是两个代码片段,它们都会产生错误: local:
const mongoose = require('mongoose');
module.exports = async () => {
try{
await mongoose.connect(process.env.DB_URL, {useNewUrlParser: true});
console.log("Database connected");
}catch(error)
{
console.log("error: ", error);
throw new Error(error);
}
}和云:
const { MongoClient } = require('mongodb');
const uri = "mongodb+srv://user1:<[mypasswordgoeshere]>@cluster0.vl2la.mongodb.net/myFirstDatabase?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });
client.connect(err => {
const collection = client.db("test").collection("devices");
// perform actions on the collection object
client.close();
});这里有许多类似错误的问题,我已经尽可能多地遵循了这些步骤,包括重新安装软件包,删除node_modules并重新安装,安装自动修复程序,以及降级各种软件包的版本。需要注意的是,我使用的是Windows7,因此无法进一步更新我的node.js版本。
这是我的packages.json文件:
{
"name": "node-api",
"version": "1.0.0",
"description": "",
"main": "server.js",
"scripts": {
"start": "node server.js",
"dev": "nodemon server.js"
},
"author": "",
"license": "ISC",
"dependencies": {
"autoprefixer": "^9.8.0",
"cors": "^2.8.5",
"dotenv": "^10.0.0",
"express": "^4.17.1",
"mongoose": "^6.0.8"
},
"devDependencies": {
"nodemon": "^2.0.13"
}
}发布于 2021-10-04 13:25:32
由于某些原因,在Node.js终端中启动服务器会产生此错误。在Windows7 cmd中执行所有操作都可以完美工作,而不会出现此错误。
发布于 2021-11-24 15:26:27
我在mongo-connection-string-url包中也遇到了同样的问题。正在运行节点13.3.0,升级到14.17.5解决了此问题。
https://stackoverflow.com/questions/69430522
复制相似问题