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

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

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([{ id: 42, name: '42' }]);
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
  }

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