【发布时间】:2020-11-24 03:57:55
【问题描述】:
我有以下架构:
const SubmitDebtSchema = new Schema ({
balance: [{
balanceDate: Date,
newBalance: Number
}]
});
我有以下函数将新对象附加到数组中:
module.exports = async (req, res) => {
let newDateObject = {
balanceDate: req.body.balanceDate,
newBalance: req.body.newBalance
};
await SubmitDebt.findOneAndUpdate(
{ _id: req.query.id },
{ $push: { balance: newDateObject } },
{new: true, useFindAndModify: false}
);
};
但是,尽管数据库成功更新,但它在 10 秒后超时并显示以下错误消息:
2020-11-23T16:51:57.138Z 25fa69c2-91a1-4a74-8034-af132d4d8eb3 任务 10.01 秒后超时
有人对如何解决这个问题有任何反馈吗?成功提交后,它也不会推送到我的“仪表板”。
这是我的 Axios 前端调用:
onSubmit = async (e) => {
e.preventDefault();
let newBalanceDate = new Date();
this.calculateUpdatedBalance()
await axios.post("/api/edit/editDebtBalance",
{
balanceDate: newBalanceDate,
newBalance: this.calculateUpdatedBalance(),
},
{
params: {
id: this.props.match.params.id
}
}
)
this.props.history.push('/dashboard');
}
编辑:我的完整无服务器函数文件:
const express = require("express");
const mongoose = require("mongoose");
const bodyParser = require("body-parser");
const SubmitDebt = require("../submit/submitDebtSchema");
require("dotenv").config();
const app = express();
app.use(bodyParser.urlencoded({
extended: true
}));
mongoose.connect(process.env.MONGO_URI);
module.exports = async (req, res) => {
let newDateObject = {
balanceDate: req.body.balanceDate,
newBalance: req.body.newBalance
};
return await SubmitDebt.findOneAndUpdate(
{ _id: req.query.id },
{ $push: { balance: newDateObject } },
{new: true, useFindAndModify: false}
);
};
【问题讨论】: