无法在NodeJS中将字符串转换为ObjectId

时间:2020-02-12 22:47:20

标签: node.js mongodb

我正在拔头发。

我尝试使用猫鼬:

const ObjectId = require('mongoose')。Types.ObjectId;

let id = new ObjectId(pes​​on [“ _ id”]);

当我console.log(id)时,它仅显示字符串值。 当我将id附加到我正在使用的另一个对象的数组中时,我将整个JSON.stringify() 对象,我只得到“ 1djd892jowidj3wfejk93”字符串值。

当我将searchObject传递给Mongo时,它不会返回结果。

我还尝试将本地MongoDB驱动程序用于节点:

const {ObjectId} = require('mongodb');

let id = Objectid(“ 1djd892jowidj3wfejk93”)

当登录到控制台并嵌入父级搜索请求时,它也仅返回一个字符串值。 JSON.stringify()仅显示字符串,查询返回空。

原生NodeJs mongoDb驱动程序

3 个答案:

答案 0 :(得分:0)

尝试以下操作:

const {ObjectID} = require('mongodb');
const id = new ObjectID('5e059042b091f6000a4bf236');

答案 1 :(得分:0)

如果使用猫鼬,则无需使用额外的依赖项,

const mongoose = require('mongoose');

function convertToObjectID(id) {
    return mongoose.Types.ObjectId(id)
}

答案 2 :(得分:0)

尝试

var mongoose = require('mongoose');
var id = mongoose.Types.ObjectId('1djd892jowidj3wfejk93');
相关问题