1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/didiopensource-KnowStreaming

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
Клонировать/Скачать
curve-info.ts 2 КБ
Копировать Редактировать Исходные данные Просмотреть построчно История
zengqiao Отправлено 4 лет назад c6e4b60
import { observable, action } from 'mobx';
import moment = require('moment');
import { EChartOption } from 'echarts/lib/echarts';
import { ICurve } from 'container/common-curve/config';
import { curveKeys, PERIOD_RADIO_MAP } from 'container/admin/data-curve/config';
import { timeFormat } from 'constants/strategy';
class CurveInfo {
@observable
public periodKey: string = 'oneHour';
@observable
public timeRange: [moment.Moment, moment.Moment] = PERIOD_RADIO_MAP.get(this.periodKey).dateRange;
@observable
public curveData: { [key: string]: EChartOption } = {};
@observable
public curveLoading: { [key: string]: boolean } = {};
@observable
public operators: string[] = [];
@observable
public currentOperator: string;
@action.bound
public setCurveData(key: curveKeys | string, data: EChartOption) {
this.curveData[key] = data;
}
@action.bound
public setCurveLoading(key: curveKeys | string, loading: boolean) {
this.curveLoading[key] = loading;
}
@action.bound
public setTimeRange(newRange: [moment.Moment, moment.Moment]) {
this.timeRange = newRange;
}
@action.bound
public setOperators(operators: string[]) {
this.operators = operators;
}
@action.bound
public setCurrentOperator(operator: string) {
this.currentOperator = operator;
}
public getStartTime = () => {
return this.timeRange[0].format(timeFormat);
}
public getEndTime = () => {
return this.timeRange[1].format(timeFormat);
}
public getCommonCurveData = (
options: ICurve,
parser: (option: ICurve, data: any[]) => EChartOption,
reload?: boolean) => {
const { path } = options;
this.setCurveData(path, null);
this.setCurveLoading(path, true);
return options.api(this.timeRange[0], this.timeRange[1], reload).then((data: any) => {
this.setCurveData(path, parser(options, data));
}).finally(() => {
this.setCurveLoading(path, false);
});
}
}
export const curveInfo = new CurveInfo();

Комментарий ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://gitlife.ru/oschina-mirror/didiopensource-KnowStreaming.git
git@gitlife.ru:oschina-mirror/didiopensource-KnowStreaming.git
oschina-mirror
didiopensource-KnowStreaming
didiopensource-KnowStreaming
v2.4.2