所以我正在构建一个 NodeJS Web 应用程序,它涉及通过 Mongoose 保存数据,如下所示。
保存完成后,我需要显示一个弹出窗口。
// Update the user model
User.updateOne({userId: request.user.userId}, {$push: {saved: [parseInt(request.query.saveId)]}}, function(error, success){
if(error){
console.log(error)
} else {
//
// Show a window alert in javascript here
}
});
虽然我知道 NodeJS 和 JS 具有完全不同的功能,但有什么办法可以通过 NodeJS 调用 window.alert,也许是某种类型的 URL?
在你的 ejs 文件中添加一个像这样的脚本标签
<script>
fetch('/users/update', { method:'POST',data: JSON.stringify(user) }})
.then(res => res.json())
.then(data => window.alert(data))
.catch(err => window.alert("Error updating user:" + err.message))
</script>
在JSON.stringify(user)
,user
对象是应该从渲染中获得的
并创建一个匹配/users/update
并在此处完成数据库操作的路由
app.post('/users/update',(req,res) => {
User.updateOne({userId: req.user.userId}, {$push: {saved: [parseInt(request.query.saveId)]}}, function(error, success){
if(error){
res.status(500).json({message: erroe.message})
} else {
res.json({message: "User updated"})
}
});
})
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句