在反应中使用地图功能在渲染中调用我的帐户列表

时间:2019-10-23 21:52:52

标签: node.js reactjs api express

我不知道如何在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"
}      
}

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

看起来,您真正需要做的就是将项目设置为在获取项目后再声明。

.then(data => {
  // localStorage.setItem('mymy',  "fiss");
  this.setState({ items: data.result });
})