使用useNewUrlParser在TypeScript中使用猫鼬时出现类型错误

问题描述 投票:0回答:1

我正在执行以下操作:

// Connect to MongoDB
mongoose.connect(MONGODB_URI, { useNewUrlParser: true, useCreateIndex: true }).then(
  () => { /** ready to use. The `mongoose.connect()` promise resolves to undefined. */ },
).catch((err: Error) => {
  console.log('MongoDB connection error. Please make sure MongoDB is running. ' + err)
  process.exit();
})

并且我从WebStorm TypeScript服务中得到以下错误(手动运行TSLint可以正常工作:]

TS2345:类型为'{useNewUrlParser:boolean; useCreateIndex:布尔值}'不可分配给'(err:MongoError)类型的参数=>无效”。对象文字可能仅指定已知属性,并且'useNewUrlParser'在类型'(err:MongoError)=> void'中不存在。

这似乎是@types/mongoose的问题,但我到处都看过,但找不到它的来源。

这里是一种变通方法,不能真正解释问题:

    mongoose.set('useNewUrlParser', true)
    mongoose.set('useCreateIndex', true)
    mongoose.connect(MONGODB_URI).then(...
typescript mongoose webstorm tslint
1个回答
0
投票

您需要安装开发依赖项

npm install -D @types/mongoose --save
© www.soinside.com 2019 - 2024. All rights reserved.