Я работаю над Mernstack. У меня есть модель под названием Events, у событий есть атрибуты title, description, startDate и closedDate. когда создается событие, люди могут указать, что они собираются для этого события, нажав кнопку, и эта кнопка обновит другой атрибут внутри этого события с именем going
, увеличив число на 1. это работало с Node и Express Только js, но теперь, когда я интегрирую React to Node, я не знаю, как заставить его работать.
Теперь мой вопрос: как мне сделать запрос GET
от React
к Мой маршрут Express, щелкнув ссылку, чтобы атрибут going
внутри модели событий был увеличен на единицу?
Вот мой маршрут
router.get("/:id/going", async (req, res, next) => {
Event.findById(req.params.id, function(err, event) {
if (!event) {
return next(new Error('Could not load Document'));
}else {
event.going += 1;
event.save();
res.json(event)
}
});
});
и вот мой конструктор в Reactjs. Примечание: мои Event и EventComment работают нормально, я только ищу способ увеличить значение атрибута going внутри события на 1 при каждом нажатии ссылки.
constructor(props) {
super(props);
this.state = {
eventcomments: [],
event: '',
name: '',
description:'',
going: '',
};
}
запрос GET, который я хочу использовать для запуска маршрута события для увеличения числа на 1
axios.get('http://localhost:9000/events/'+this.props.match.params.id+'/going')
.then(res => {
this.setState({
going: '',
})
})
, и это ссылка, которую я хочу, чтобы пользователь щелкнул, чтобы атрибут going в маршруте события увеличился на 1
<Link to={"/events/"+this.state.event._id+"/going"}>Going</Link>