我试图运行它,它说像标题一样的错误。这是我的代码:
const URI = process.env.MONGODB_URL;
mongoose.connect(URI, {
useCreatendex: true,
useFindAndModify: false,
useNewUrlParser: true,
useUnifiedTopology: true
}, err => {
if(err) throw err;
console.log('Connected to MongoDB!!!')
})
Run Code Online (Sandbox Code Playgroud)
我在 .env 中设置了 MONGODB_URL :
MONGODB_URL = mongodb+srv://username:<password>@cluster0.accdl.mongodb.net/website?retryWrites=true&w=majority
Run Code Online (Sandbox Code Playgroud)
如何解决?
小智 40
我也遇到同样的问题,但如果您删除 useCreateIndex、useFindAndModify 它将解决问题,只需编写:
const URI = process.env.MONGODB_URL;
mongoose.connect(URI, {
useNewUrlParser: true,
useUnifiedTopology: true
}, err => {
if(err) throw err;
console.log('Connected to MongoDB!!!')
});
Run Code Online (Sandbox Code Playgroud)
这对我有用。
小智 29
useNewUrlParser、useUnifiedTopology、useFindAndModify和useCreateIndex不再受支持的选项。Mongoose 6 的行为始终表现为useNewUrlParser、useUnifiedTopology、 和useCreateIndex为 true,而useFindAndModify为 false。请从您的代码中删除这些选项。
src --> https://mongoosejs.com/docs/migration_to_6.html#no-more-deprecation-warning-options
// No longer necessary:
mongoose.set('useFindAndModify', false);
await mongoose.connect('mongodb://localhost:27017/test', {
useNewUrlParser: true, // <-- no longer necessary
useUnifiedTopology: true // <-- no longer necessary
});
Run Code Online (Sandbox Code Playgroud)
小智 12
我有同样的问题。因斯塔德
mongoose.connect(URI, {
useCreatendex: true,
useFindAndModify: false,
useNewUrlParser: true,
useUnifiedTopology: true
}, err => {
if(err) throw err;
console.log('Connected to MongoDB!!!')
})
Run Code Online (Sandbox Code Playgroud)
尝试这个:
mongoose.connect(URI,
err => {
if(err) throw err;
console.log('connected to MongoDB')
});
Run Code Online (Sandbox Code Playgroud)
小智 10
该错误是因为新版本的mongoose ie版本6.0.6。
正如文档所说:
不再有弃用警告选项
useNewUrlParser、useUnifiedTopology、useFindAndModify和useCreateIndex不再受支持的选项。Mongoose 6 的行为始终表现为useNewUrlParser、useUnifiedTopology、 和useCreateIndex为 true,而useFindAndModify为 false。请从您的代码中删除这些选项。
此外,新版本还有一些重大变化。
有关更多信息,请访问https://mongoosejs.com/docs/migration_to_6.html#no-more-deprecation-warning-options
import mongoose from 'mongoose';
const db = process.env.MONGOURI;
const connectDB = async () => {
try {
console.log(db);
await mongoose.connect(`${db}`, {
useNewUrlParser: true,
useUnifiedTopology: true,
});
console.log('MongoDB connected');
} catch (error) {
console.log(error.message);
process.exit(1);
}
};
export default connectDB;
Run Code Online (Sandbox Code Playgroud)
小智 9
当我评论 useNewUrlParser 和 useCreateIndex 时,它对我有用。
删除usecreateindex、usefindandmodify选项
const URI = process.env.MONGODB_URL;
mongoose.connect(URI, {
useNewUrlParser: true,
useUnifiedTopology: true
}, err => {
if(err) throw err;
console.log('Connected to MongoDB!!!')
})
Run Code Online (Sandbox Code Playgroud)
小智 7
在新的 mongodb 版本中,您不必使用这些: useCreateIndex: true, useFindAndModify: false, useNewUrlParser: true, useUnifiedTopology: true
小智 5
选项useCreateIndex,useFindAndModify在 v6 版本中不支持
try {
await mongoose.connect(process.env.MONGODB_URL, {
useNewUrlParser: true,
useUnifiedTopology: true,
});
console.log("Connect successfully!");
} catch (error) {
console.log("Connect Failure!", error.message);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2809 次 |
| 最近记录: |