Bonsoir,

Je reçois ce messages d'erreur : npm start je ne vois vraiment pas ou est mon erreur ?

×
←→1 erreur sur 2 sur la page
Rejet non géré (erreur): le type d'élément n'est pas valide: attendait une chaîne (pour les composants intégrés) ou une classe / fonction (pour les composants composites) mais a obtenu: objet.

Vérifiez la méthode de rendu de «App».
▶ 22 cadres de pile ont été effondrés.
(fonction anonyme)
C: /react-crypto/src/App.js: 22
19 | .then(res => {
20 | const cryptos = res.data;
21 | console.log(cryptos);
> 22 | this.setState({cryptos: cryptos});
| ^ 23 | })
24 | }
25 |
Voir compilé
Mon fichier source : app.js

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import React, { Component } from 'react';
//import logo from './logo.svg';
import './App.css';
import axios from 'axios';
var NumberFormat = require('react-number-format');
 
class App extends Component {
 
  constructor(props) {
    super(props);
 
    this.state = {
      cryptos: []
    };
  }
 
  componentDidMount() {
    axios.get('https://min-api.cryptocompare.com/data/pricemulti?fsyms=BTC,ETH,IOT&tsyms=USD')
      .then(res => {
        const cryptos = res.data;
        console.log(cryptos);
        this.setState({cryptos: cryptos});
      })
  }
 
  render() {
    return (
      <div className="App">
        {Object.keys(this.state.cryptos).map((key) => (
          <div id="crypto-container">
            <span className="left">{key}</span>
            <span className="right"><NumberFormat value={this.state.cryptos[key].USD} displayType={'text'} decimalPrecision={2} thousandSeparator={true} prefix={'$'} /></span>
          </div>
        ))}
      </div>
    );
  }
}
 
export default App;