我正在通过Express创建一个简单的CRUD板。
我实现了CRU,但是删除功能失败。我使用Rails method='delete'
作为常见的锚标记,但Express似乎不支持它。
如何激活删除链接?
app.js
...
const board = require("./routes/board");
app.use("/board", board);
...
观看次数
a(href=`/board/${board._id} method="delete"`) 삭제
路线
...
const board = require("../logic/board");
router.delete("/:id", board.delete);
...
逻辑
...
const Board = require("../db/board");
exports.delete = (req, res) =>{
Board.findByIdAndRemove(req.params.id, err => {
if (err) {
return next(err);
}
res.redirect("/board/index");
});
}
...
我想问。做exports.delete = () => {}
和做module.exports = logic <delete, create etc...>
这样的行为有什么区别?
答案 0 :(得分:0)
HTML <a>
锚标签没有method
属性-也许您在考虑<form>
标签?
做
exports.delete = () => {}
和做module.exports = logic
这样的行为有什么区别
区别是何时执行逻辑。 exports.delete = () => {}
表单将导出您可以在将来中的某个时刻执行的函数,而module.exports = Board.findByIdAndRemove()
将在以下情况下立即执行数据库查询 文件被解析(您可能不想要)。