Reaccionar – Componentes JSX definidos por el usuario No representa

He intentado hacer una llamada AJAX y luego agregarla a mi vista después de haberla recuperado.

Nada realmente sucede con el código actual.

const View = () => ( 

Reports

); export default View; var statisticsPage = React.createClass({ getInitialState: function() { return {info: "loading ... "}; }, componentDidMount: function() { this.requestStatistics(1); }, render: function() { return (
info: {this.state.info}
); }, requestStatistics:function(){ axios.get('api/2/statistics') .then(res => { values = res['data'] this.setState({info:1}) console.log('works!!') }); } })

El nombre del componente debe comenzar con un carácter en mayúsculas, ya que las que comienzan con minúsculas se buscan como elementos de DOM predeterminados, como div, p, span etc Lo cual no es el caso para su componente de página de statisticsPage . Hazlo mayúscula y funciona bien.

De acuerdo con los documentos :

Cuando un tipo de elemento comienza con una letra lowercase , se refiere a un componente incorporado como React.createElement da como resultado una cadena 'div' o ‘span’ pasada a React.createElement . Los tipos que comienzan con una letra mayúscula como comstackn a React.createElement(Foo) y corresponden a un componente definido o importado en su archivo JavaScript .

Recomendamos nombrar los componentes con mayúscula. Si tiene un componente que comienza con una letra lowercase , asígnelo a una variable en mayúscula antes de usarlo en JSX.

 const View = () => ( 

Reports

); var StatisticsPage = React.createClass({ getInitialState: function() { return {info: "loading ... "}; }, componentDidMount: function() { this.requestStatistics(); }, render: function() { return (
info: {this.state.info}
); }, requestStatistics:function(){ console.log('here'); this.setState({info:1}) console.log('works!!') } }) ReactDOM.render(, document.getElementById('app'));