Javascript 节点/快速在重定向前暂停
我使用此代码从数组中删除一个项。/list站点只是在数组中循环并打印每个项目,但是在执行此代码之后,我必须在显示更改之前刷新页面。是否有其他方法重定向到我的页面或在res.redirect(“/list”)之前添加一个小暂停;这样我的json文件就有足够的时间更新了?在重定向之前会更新json(因为您使用的是Javascript 节点/快速在重定向前暂停,javascript,node.js,express,Javascript,Node.js,Express,我使用此代码从数组中删除一个项。/list站点只是在数组中循环并打印每个项目,但是在执行此代码之后,我必须在显示更改之前刷新页面。是否有其他方法重定向到我的页面或在res.redirect(“/list”)之前添加一个小暂停;这样我的json文件就有足够的时间更新了?在重定向之前会更新json(因为您使用的是Sync版本的writeFile)。您确定这就是问题所在吗?是否检查了fetchJobs()函数?正如@nadavvadan指出的,重定向发生在写入文件之后。是的,我的fetchJobs()
Sync
版本的writeFile
)。您确定这就是问题所在吗?是否检查了fetchJobs()
函数?正如@nadavvadan指出的,重定向发生在写入文件之后。是的,我的fetchJobs()函数只是解析文件:return JSON.parse(fs.readFileSync(“jobs.JSON”))
jobs.splice(req.body.prodId,1)
是否prodId
correct?,splice将索引带入数组,因此prodId
似乎并不正确。请使用writeFile的异步方法,并在回调中执行重定向。
app.post("/remove", function(req,res){
let jobs = fetchJobs();
jobs.splice(req.body.prodId,1);
fs.writeFileSync("jobs.json", JSON.stringify(jobs));
//some sort of pause here
res.redirect("/list");
})