当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript explore.updateHistory函数代码示例

本文整理汇总了TypeScript中app/core/utils/explore.updateHistory函数的典型用法代码示例。如果您正苦于以下问题:TypeScript updateHistory函数的具体用法?TypeScript updateHistory怎么用?TypeScript updateHistory使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了updateHistory函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: async

  return async (dispatch, getState) => {
    const { datasourceInstance, eventBridge, queries, queryIntervals, range, scanning, history } = getState().explore[
      exploreId
    ];

    if (resultType === 'Logs' && datasourceInstance.convertToStreamTargets) {
      dispatch(
        startSubscriptionsAction({
          exploreId,
          dataReceivedActionCreator: subscriptionDataReceivedAction,
        })
      );
    }

    const datasourceId = datasourceInstance.meta.id;
    const transaction = buildQueryTransaction(queries, resultType, queryOptions, range, queryIntervals, scanning);
    dispatch(queryStartAction({ exploreId, resultType, rowIndex: 0, transaction }));
    try {
      const now = Date.now();
      const response = await datasourceInstance.query(transaction.options);
      eventBridge.emit('data-received', response.data || []);
      const latency = Date.now() - now;
      // Side-effect: Saving history in localstorage
      const nextHistory = updateHistory(history, datasourceId, queries);
      dispatch(historyUpdatedAction({ exploreId, history: nextHistory }));
      dispatch(processQueryResults(exploreId, response, latency, resultType, datasourceId));
    } catch (err) {
      eventBridge.emit('data-error', err);
      dispatch(processQueryErrors(exploreId, err, resultType, datasourceId));
    }
  };
开发者ID:grafana,项目名称:grafana,代码行数:31,代码来源:actions.ts

示例2: return

  return (dispatch, getState) => {
    const { datasourceInstance, history, queryTransactions, scanner, scanning } = getState().explore[exploreId];

    // If datasource already changed, results do not matter
    if (datasourceInstance.meta.id !== datasourceId) {
      return;
    }

    // Transaction might have been discarded
    const transaction = queryTransactions.find(qt => qt.id === transactionId);
    if (!transaction) {
      return;
    }

    // Get query hints
    let hints: QueryHint[];
    if (datasourceInstance.getQueryHints) {
      hints = datasourceInstance.getQueryHints(transaction.query, result);
    }

    // Mark transactions as complete and attach result
    const nextQueryTransactions = queryTransactions.map(qt => {
      if (qt.id === transactionId) {
        return {
          ...qt,
          hints,
          latency,
          result,
          done: true,
        };
      }
      return qt;
    });

    // Side-effect: Saving history in localstorage
    const nextHistory = updateHistory(history, datasourceId, queries);

    dispatch(
      queryTransactionSuccessAction({
        exploreId,
        history: nextHistory,
        queryTransactions: nextQueryTransactions,
      })
    );

    // Keep scanning for results if this was the last scanning transaction
    if (scanning) {
      if (_.size(result) === 0) {
        const other = nextQueryTransactions.find(qt => qt.scanning && !qt.done);
        if (!other) {
          const range = scanner();
          dispatch(scanRangeAction({ exploreId, range }));
        }
      } else {
        // We can stop scanning if we have a result
        dispatch(scanStopAction({ exploreId }));
      }
    }
  };
开发者ID:johntdyer,项目名称:grafana,代码行数:59,代码来源:actions.ts


注:本文中的app/core/utils/explore.updateHistory函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。