删除功能代码
deleteScreen:(screenId)=>{
return new Promise((resolve,reject)=>{
db.get().collection(collection.SCREEN_COLLECTION).removeOne({_id:ObjectID(screenId)}).then((response)=>{
console.log(response)
resolve(response)
})
})
}
http删除路由是
router.delete('/delete-screen/:id',services.deleteScreen)
html代码是
<a href="/theater/delete-screen/{{this._id}}" class="btn btn-danger" onclick="return confirm('Are you sure want to delete {{screen.ScreenName}} ?')">Delete</a>
问题是您的路由器处理程序实际上接收request
、request
和next
,所以在编写时。
router.delete('/delete-screen/:id',services.deleteScreen)
这意味着函数services.deleteScreen
将以以下方式被调用services.deleteScreen(req, res, next)
;因此,您需要更改函数的签名。
router.delete('/delete-screen/:id', (req, res) => {
services.deleteScreen(req.params.id)
.then(() => res.end())
.catch((e) => {
res.status = 500; // means internal error;
res.end();
});
})