@semki096

Как работать с динамическими данными?

Пытаюсь разобраться в библиотеке d3js + react. А именно вопрос работы с динамическими данными. Вот функция которая получает данные
......
export function getData() {
	const promiseMSFT = fetch("https://......tsv")
		.then(response => response.text())
		.then(data => tsvParse(data, parseData(parseDate)))
	return promiseMSFT;
}
......

А вот компонент который рендерит график, используя эти данные
import { getData } from "./getdata"
......
class ChartComponent extends React.Component {
	/*componentDidMount функция вызывается после рендеринга компонента*/
	componentDidMount() {
		getData().then(data => {
			/* setState - для асинхронного обновления данных? */
			this.setState({ data })
		})
	}
	render() {
        ...

Насколько я понимаю, график строится на данных полученных в виде обьекта. А что если мне надо отдавать живые данные например через сокеты? Буду признателен за подсказки и идеи. Не знаю даже как подступиться к решению этой задачи. Если я к примеру буду отдавать данные каждую минуту, как мне при этом не терять старые данные и добавлять новые? Не знаю даже с чего начать.
  • Вопрос задан
  • 49 просмотров
Решения вопроса 1
hzzzzl
@hzzzzl
как мне при этом не терять старые данные и добавлять новые


this.setState({ data: [ ...this.state.data, ...newData ] })
// новый массив [ старые данные + новые данные ]
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы