mysql - 使用 React.js 和 Express 删除发布到 MySQL 的帖子

标签 mysql node.js reactjs express

我在使用 React 和 MySQL 删除帖子时遇到问题。我没有收到任何错误或警告,但帖子没有被删除,当我控制台记录受影响的行时,它返回 0。


deleteNote = id => {
    // <-- declare id parameter
    axios
      .delete(`http://localhost:5000/delete/${id}`) // <-- remove ;
      .then(() => {
        // Issue GET request after item deleted to get updated list
        // that excludes note of id
        this.getAllNotes()
      })
      .then(res => {
        const allNotes = res.data;
        this.setState({ allNotes });
      })
      .catch(err => {
        console.error(err);
      });
  };

<button
type="button"
className="btn-xs btn-info float-right"
onClick={() => this.props.deleteNote(note.ID)}>
<span>
<i className="fas fa-trash-alt" />
</span>{" "}
Delete
</button>


我在 express 控制台中的删除方法正确地记录了正确的帖子 ID

app.delete("/delete/:id", (req, res) => {
  let { ID } = req.params.id;
  let sql = "DELETE FROM notes WHERE ID= ?";
  console.log("id: ", req.params.id);

  // delete a row with id = req.params.id
  connection.query(sql, [ID], (error, results, fields) => {
    if (error) return console.error(error.message);

    console.log("Deleted Row(s):", results.affectedRows);
  });
});

最佳答案

在我改变了使用参数的方式后它起作用了。有人知道为什么将 ID 作为第二个参数传递不起作用吗?

app.delete("/delete/:id", (req, res) => {
  let { ID } = req.params.id;
  let sql = `DELETE FROM notes WHERE ID = ${req.params.id}`;
  console.log("id: ", req.params.id);

  // delete a row with id = req.params.id
  connection.query(sql, (error, results, fields) => {
    if (error) return console.error(error.message);
    res.status(200).send(results);
    console.log("Deleted Row(s):", results.affectedRows);
  });
});

关于mysql - 使用 React.js 和 Express 删除发布到 MySQL 的帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55770103/

相关文章:

javascript - 下拉选择后显示表单以编辑表中的 mysql 数据

MySQL - 检查唯一约束的顺序

javascript - 测试异步函数的问题

javascript - react native : Using props in const

mysql - upsert() 如何在多个键上工作? [ Sequelize ]

c++ - 如何使用 MySQL Connector/C++ 获取 DATETIME 并存储到 time_t?

javascript - 如何在express框架中创建模板标签(django)

node.js - package.json 中的 "All Rights Reserved"许可证

javascript - 如何管理未知数量的文本区域的状态?

javascript - Mongo DB - 新创建的文档未按顺序插入