【发布时间】:2020-12-02 23:11:24
【问题描述】:
大家好,我想在我的代码中做一个基本的对象函数我需要猫鼬,它给我发送了这个错误,我不明白为什么:UnhandledPromiseRejectionWarning: TypeError: urls.toObject is not a function。在get函数中,希望得到帮助。
const express = require("express");
const { v4: uuidv4 } = require("uuid");
const Url = require("../models/Url");
const mongoose = require("mongoose");
const HttpError = require("../models/http-errors");
const getTodo = async (req, res, next) => {
let urls;
try {
urls = await Url.find({});
res.json({ urls });
} catch (err) {
const error = new HttpError(
"Something went wrong, could not find a Url.",
500
);
return next(error);
}
res.json({ urls: urls.toObject({ getters: true }) });
};
const addTodo = async (req, res, next) => {
const { content } = req.body;
const createdPlace = new Url({
content: content,
enable: false,
});
// Sending it To Mongo
try {
await createdPlace.save();
} catch (err) {
const error = new HttpError("Creating Place fails mongo");
return next(error);
}
res.sendStatus(200);
};
exports.getTodo = getTodo;
exports.addTodo = addTodo;
【问题讨论】:
-
将
res.json({ urls: urls.toObject({ getters: true }) });移动到try块 -
这不是重点 我相信我试过了,但我得到了另一个错误:错误:出了点问题,找不到 URL。在 getTodo (C:\Users\ethan\Desktop\all projects\ToDo\ToDo-Back-master\controllers\url-controllers.js:31:19)
-
但是如果 console.log(URLs) 我得到了对象。
标签: javascript database mongodb mongoose