Кроме возможного плохого задания на копирование / вставку, в вашем fetch
есть свисающая запятая и дополнительная закрывающая }
.
componentDidMount() {
const loginEmail = localStorage.getItem('loginEmail');
this.setState({loginEmail})
console.log(loginEmail)
fetch(`http://localhost:9000/api/item/view${loginEmail}`,) // <- dangling comma
.then((resp) => {
resp.json()
.then((res) => {
console.log(res.data.user_info.id);
// localStorage.setItem('id', res.data.user_info.id);
this.setState({data: res.data});
})
})
}
Удалите запятую и снимите (то есть сгладьте) свой цепочку обещаний и последовательно используйте точки с запятой в конце своих выражений.
componentDidMount() {
const loginEmail = localStorage.getItem('loginEmail');
this.setState({loginEmail});
console.log(loginEmail);
fetch(`http://localhost:9000/api/item/view${loginEmail}`)
.then(resp => resp.json())
.then(res => {
console.log(res.data.user_info.id);
// localStorage.setItem('id', res.data.user_info.id);
this.setState({data: res.data});
});
}
Кроме того, я думаю, что вы перепутали функциональные компоненты и компоненты на основе классов. componentDidMount
- это функция жизненного цикла реагирующего компонента на основе класса только ; это не работает таким же образом в функциональном компоненте. Как написано, это не правильный синтаксис; он должен быть внутри объекта или класса (т.е. как компонент на основе класса). Правильный синтаксис для объявления автономных функций - использовать ключевое слово function
.
function componentDidMount() {
const loginEmail = localStorage.getItem('loginEmail');
this.setState({loginEmail});
console.log(loginEmail);
fetch(`http://localhost:9000/api/item/view${loginEmail}`)
.then(resp => resp.json())
.then(res => {
console.log(res.data.user_info.id);
// localStorage.setItem('id', res.data.user_info.id);
this.setState({data: res.data});
});
}