Estoy tratando de eliminar algunos datos de una base de datos mysql con el código:
app.delete("/api/deleteHomework/:homeworkName", (req, res) => { const homeworkName = req.params.homeworkName connection.query( "DELETE FROM homework WHERE name = ?", [homeworkName], (err, result) => { if(result){ res.send({ message: result }) console.log(result) } if(err){ console.log(err) } } ) })y luego homeworkName se pasa desde el front-end con el código:
const deleteHw = (homework) => { Axios.delete(`http://localhost:1337/api/deleteHomework/${homework}`) .then((response) => { if(response){ console.log(response) } else{ console.log("error") } }) } <DeleteForeverIcon className={classes.deleteHwIcon} onClick={() => {deleteHw(value.homeworkName)}} />Sin embargo, dice que los parámetros en la url no están definidos: url: "http://localhost:1337/api/deleteHomework/undefined"
Pase los accesorios "valor" directamente en la función de eliminación
export default function YourComponent({ value }) { ... const deleteHw = () => { Axios.delete(`http://localhost:1337/api/deleteHomework/${value.homeworkName}`) // here .then((response) => { if(response){ console.log(response) } else{ console.log("error") } }) } <DeleteForeverIcon className={classes.deleteHwIcon} onClick={deleteHw} />parte trasera
app.delete('/api/deleteHomework/:homeworkName', (req, res) => { connection.query(`DELETE FROM homework WHERE name=${req.params.homeworkName}`, (err, result) => { if (err) { console.log(err); } else { res.json(result); } }); });