Я хотел бы добавить кнопку «Мне нравится» в моем приложении, но она не работает. У меня не было какого-либо конкретного сообщения об ошибке, только 400 (неправильный запрос).
Вот что я сделал:
post. HTML
<button (click)="onStar(post._id,post.like)"> {{ post.like }} fans </button>
post.TS
onStar(id:string,like:number) {
like ++
this.postService.updateLike(id,like).subscribe(
(res) => {
console.log('ok')
}, (error) => {
console.log(error)
}
)
}
post.service.TS
updateLike(id:string, like:number) {
let url = `${this.uri}/like/${id}`;
console.log(like + ' + ' + id)
return this.http.put(url, like, { headers: this.headers }).pipe(
catchError(this.errorMgmt)
)
}
Node.JS контроллер:
exports.addLike = (req, res, next) => {
Post.updateOne({ _id: req.params.id }, { like , _id: req.params.id })
.then(() => res.status(201).json({ message: 'Great!'}))
.catch(error => res.status(400).json({ error }));
}
Node.JS маршрут:
router.put('/like/:id', stuffCtrl.addLike);
Большое спасибо заранее за вашу помощь:) Хорошего дня! Rachel