Javascript Res.redirect不是在nodejs webapp中使用express时的函数
如果所需数据更新成功,我将尝试重定向到“/admin”路由,但我得到的错误是res.redirect不是一个函数。我也尝试过写returnres.redirect,但它也不起作用。节点专家,请帮忙。在这里,我只是在注册号上找到学生记录。创建并更新带有标记的记录,并重定向到管理页面Javascript Res.redirect不是在nodejs webapp中使用express时的函数,javascript,node.js,express,Javascript,Node.js,Express,如果所需数据更新成功,我将尝试重定向到“/admin”路由,但我得到的错误是res.redirect不是一个函数。我也尝试过写returnres.redirect,但它也不起作用。节点专家,请帮忙。在这里,我只是在注册号上找到学生记录。创建并更新带有标记的记录,并重定向到管理页面 app.post('/admin/midterm/marks',(req,res)=>{ var m_written=[]; var m_practical=[]; var my
app.post('/admin/midterm/marks',(req,res)=>{
var m_written=[];
var m_practical=[];
var myjson=JSON.stringify(req.body);
course.subjects.map(sub=>{
if(!Array.isArray(req.body[`${sub}`]))
{
var p={subject:sub,mark:req.body[`${sub}`]}
m_written.push(p);
}
else{
var p={subject:sub,mark:req.body[`${sub}`][0]};
var q={subject:sub,mark:req.body[`${sub}`][1]};
m_written.push(p);
m_practical.push(q);
}
});
var first={
sem:course._id,
marks_sem:[{
term:ms,
m_written:m_written,
m_practical:m_practical
}]
}
if(!StudentRecord.total.length )
{
Student.updateOne({_id:check_Id},{total:first},function(err,res){
if(err)
{console.log("error");}
res.redirect('/admin');
});
}
else{
var flag=0;
StudentRecord.total.map(record=>{
if(record.sem==required_sem)
{
flag=1;
record.marks_sem.push(first.marks_sem);
Student.updateOne({_id:check_Id},{total:StudentRecord.total},function(err,res){
if(err)
{console.log("error");}
res.redirect('/admin');
});
}
});
if(flag==0)
{
StudentRecord.total.push(first);
Student.updateOne({_id:check_Id},{total:StudentRecord.total},function(err,res){
if(err)
{console.log("error");}
res.redirect('/admin');
});
}
}});
在回调中重写
res
。命名回调result
中的第二个参数,一切都会正常工作
app.post(“/admin/midterm/marks)”,(请求、回复)=>{
var m_书面=[];
var m_实用=[];
var myjson=JSON.stringify(req.body);
课程.科目.地图((子项)=>{
if(!Array.isArray(req.body[`${sub}`])){
var p={subject:sub,mark:req.body[`${sub}`]};
m_.推(p);
}否则{
var p={subject:sub,mark:req.body[`${sub}`][0]};
var q={subject:sub,mark:req.body[`${sub}`][1]};
m_.推(p);
m_实用推(q);
}
});
var first={
扫描电镜:当然,
马克(sem):[
{
任期:ms,
m_书面:m_书面,
m_实用:m_实用,
},
],
};
如果(!StudentRecord.总长度){
updateOne({u id:check\u id},{total:first},函数(err,result){
如果(错误){
控制台日志(“错误”);
}
res.redirect(“/admin”);
});
}否则{
var标志=0;
StudentRecord.total.map((记录)=>{
if(record.sem==必需的\u sem){
flag=1;
记录.marks\u sem.push(第一个.marks\u sem);
Student.updateOne(
{{u id:check{u id},
{total:StudentRecord.total},
函数(错误、结果){
如果(错误){
控制台日志(“错误”);
}
res.redirect(“/admin”);
}
);
}
});
如果(标志==0){
StudentRecord.total.push(第一个);
Student.updateOne(
{{u id:check{u id},
{total:StudentRecord.total},
函数(错误、结果){
如果(错误){
控制台日志(“错误”);
}
res.redirect(“/admin”);
}
);
}
}
});
在回调中覆盖res
。命名回调result
中的第二个参数,一切都会正常工作
app.post(“/admin/midterm/marks)”,(请求、回复)=>{
var m_书面=[];
var m_实用=[];
var myjson=JSON.stringify(req.body);
课程.科目.地图((子项)=>{
if(!Array.isArray(req.body[`${sub}`])){
var p={subject:sub,mark:req.body[`${sub}`]};
m_.推(p);
}否则{
var p={subject:sub,mark:req.body[`${sub}`][0]};
var q={subject:sub,mark:req.body[`${sub}`][1]};
m_.推(p);
m_实用推(q);
}
});
var first={
扫描电镜:当然,
马克(sem):[
{
任期:ms,
m_书面:m_书面,
m_实用:m_实用,
},
],
};
如果(!StudentRecord.总长度){
updateOne({u id:check\u id},{total:first},函数(err,result){
如果(错误){
控制台日志(“错误”);
}
res.redirect(“/admin”);
});
}否则{
var标志=0;
StudentRecord.total.map((记录)=>{
if(record.sem==必需的\u sem){
flag=1;
记录.marks\u sem.push(第一个.marks\u sem);
Student.updateOne(
{{u id:check{u id},
{total:StudentRecord.total},
函数(错误、结果){
如果(错误){
控制台日志(“错误”);
}
res.redirect(“/admin”);
}
);
}
});
如果(标志==0){
StudentRecord.total.push(第一个);
Student.updateOne(
{{u id:check{u id},
{total:StudentRecord.total},
函数(错误、结果){
如果(错误){
控制台日志(“错误”);
}
res.redirect(“/admin”);
}
);
}
}
});