Я хочу отфильтровать Todo.find по имени пользователя из запроса ax ios .get. Проблема в том, что он ничего не возвращает. Есть предложения?
componentDidMount() {
axios
.get("http://localhost:8080/${username}",{
// username : this.state.username
})
.then((res) => {
this.setState({todos: res.data})
console.log('--------res.data', res.data);
this.setPageCount()
})
.catch((err) => {
console.log("err", err);
});
}
app.get('/', (req, res) => {
console.log('Welcome to roffys server')
Todo.find({username:req.params.username})
.exec((err, todo) => {
if (err) {
console.log('Error retrieving todos')
} else {
console.log(req.body.username)
res.json(todo)
}
})
})
Также я хочу отправить параметры из другого компонента и я не знаю, как
Это функция, которая изменяет имя пользователя, она находится в другом компоненте:
handleLogIn = () => {
const { username, password } = this.state
if (password.length === 0 || username.length === 0 ) {
alert('Incorrect Login!')
} else {
axios
.post(`http://localhost:8080/logIn`, {
username: username,
password: password,
})
.then((res) => {
this.setState({username: username,password: password})
localStorage.setItem('username',this.state.username)
this.props.history.push("/todoapp");
window.location.reload(false)
console.log(this.state.username)
console.log('res',res)
})
.catch((err) => {
console.log("err", err);
});
}
}
BackEnd Side:
app.get('/:username', (req, res) => {
console.log('Welcome to roffys server')
Todo.find({'username': req.params.username})
.exec((err, todo) => {
if (err) {
console.log('Error retrieving todos')
} else {
res.json(todo)
}
})
})