ObjectDestructuring.js 766 Bytes
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import React from 'react'

function load() {
  return [
    { id: 1, name: '1' },
    { id: 2, name: '2' },
    { id: 3, name: '3' },
    { id: 4, name: '4' }
  ];
}

export default class extends React.Component {
  constructor(props) {
    super(props);

Fabrizio Castellarin's avatar
Fabrizio Castellarin committed
16
17
18
19
20
    this.done = () => {};
    this.props.setCallWhenDone && this.props.setCallWhenDone((done) => {
      this.done = done;
    });

21
22
23
24
25
    this.state = { users: [] };
  }

  async componentDidMount() {
    const users = load();
Fabrizio Castellarin's avatar
Fabrizio Castellarin committed
26
    this.setState({ users }, () => this.done());
27
28
29
30
31
32
33
34
35
36
37
38
39
  }

  render() {
    return (
      <div id="feature-object-destructuring">
        {this.state.users.map(user => {
          const { id, name } = user;
          return <div key={id}>{name}</div>
        })}
      </div>
    );
  }
}