我不知道如何在render()中显示项目列表 我最喜欢在列表存储位置使用arry,并从render中的该数组中获取项目
我做了一些代码,请在上面检查
constructor(props) {
super(props);
this.state = {
items: []
};
this.handleSubmit = this.handleSubmit.bind(this);
}
handleSubmit(event) {
event.preventDefault();
let { items } = this.state;
const token = localStorage.getItem('toktok');
fetch(`${API}/api/accounts`,{
headers :{
'authorization': `Bearer ${token}`,
}
})
.then(results => {
return results.json();
})
.then(data => {
const temp = data.result;
items = temp;
// localStorage.setItem('mymy', "fiss");
console.log(items);
console.log(items.length);
})
.catch(err => {
console.log("erroooor : ",err);
});}
这是render(),其中的元素称为
render(){
var { items} = this.state;
{
items.length > 0 ? items.map(item => {
const {nom, prenom, email, tel} = item;
return <div className="ohayo" key={email}>
<p>{email}</p>
<p>{nom}</p>
<p>{prenom}</p>
<p>{tel}</p>
</div>
}) : "null"
}
}
感谢您的帮助
答案 0 :(得分:1)
看起来,您真正需要做的就是将项目设置为在获取项目后再声明。
.then(data => {
// localStorage.setItem('mymy', "fiss");
this.setState({ items: data.result });
})