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

function load(name) {
  return [
    { id: 1, name: `${name}1` },
    { id: 2, name: `${name}2` },
    { id: 3, name: `${name}3` },
    { id: 4, name: `${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('user_');
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-template-interpolation">
        {this.state.users.map(user => (
          <div key={user.id}>{user.name}</div>
        ))}
      </div>
    );
  }
}