Witam,
mam problem z wyświetlaniem okna na tel. Pracuję nad stroną w react.js hostowana jest na heroku podpięta baza danych jest mongodb. a server na node.js
Więc problem polega na tym, że na desktopie wszystko działa wyskakuje popup który stworzyłem i dane przesyłane są do bazy danych na telefonie niestety już nie. Okno nie wyskakuje i informacje nie są przekazywane do bazy danych, pytanie brzmi dlaczego. Dodam tylko, że popup wyskakuje kiedy dostanę odpowiedź z servera. Drugie pytanie dlaczego dostaję odpowiedź 400 z http. domyślam się, że jest to spowodowane wysyłaniem informacji do bazy danych ale nie rozumiem dlaczego?
newComment.save()
.then(() => res.json('user added!'))
.catch(err => res.status(400).json('Error' + err));
Jeżeli dostaje Error to nie powinno być nic przekazane do bazy danych?
a baza jest aktualizowana dlaczego?
z góry dziękuje
handleSubmit = (e) => {
e.preventDefault();
const articleMessage = {
userName: this.state.userName,
comment: this.state.comment,
title: this.props.title,
}
axios.post(`http://localhost:4000/article01/addComent`, articleMessage)
.then(res => {
console.log(res.data)
this.setState({
send: true,
})
})
.catch(err => console.log(err))
this.setState({
userName: '',
comment: '',
})
const router = require('express').Router();
const Comment = require('../models/comments.model');
router.route('/addComent').post((req, res) => {
const comment = req.body.comment;
const userName = req.body.userName;
const title = req.body.title;
const newComment = new Comment({
userName,
comment,
title
});
newComment.save()
.then(() => res.json('user added!'))
.catch(err => res.status(400).json('Error' + err));
/*
res.json({
message: 'message send'
}) */
})
module.exports = router;