Source code
Revision control
Copy as Markdown
Other Tools
import React from 'react';
import { render } from 'react-dom';
import Chart from './chart';
import { getData } from "./utils"
import { TypeChooser } from "react-stockcharts/lib/helper";
class ChartComponent extends React.Component {
constructor() {
super();
this.state = { data: null, render: false };
this.doRender = () => this.setState({ render: true });
}
componentDidMount() {
getData().then(data => {
this.setState({ data })
})
}
render() {
const { render, data } = this.state;
if (!render) {
return <button id="render" onClick={this.doRender}>render</button>;
}
if (data == null) {
return <div>Loading...</div>
}
const type = new URLSearchParams(location.search).get('type') || 'hybrid';
return (
<TypeChooser type={type}>
{type => <Chart type={type} data={data} />}
</TypeChooser>
)
}
}
render(
<ChartComponent />,
document.getElementById("root")
);