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


TypeScript lodash.isError函数代码示例

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


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

示例1: requestWithDefaults

        req = requestWithDefaults(url, options, (error: HttpError, response = resp, body?: any) => {
          // node.js assigns status string as body for status codes not having body data
          if (response && response.statusCode === 202) {
            diag.debug.assert(body === http.STATUS_CODES[202], body);
            body = undefined; // resolves promise to undefined below
          }

          // error processing
          if (!error && response && response.statusCode >= 400) {
            if (_.isError(body)) {
              // correct but practically impossible
              error = body;
            } else if (_.isString(body)) {
              // use plain-text as Error message
              error = new Error(body);
            } else if (_.isObjectLike(body)) {
              // body is object representation of server-side error or exception,
              // converting to true Error object here
              error = new Error(response.statusMessage);
              diag.debug.assert(() => !_.isArray(body),
                'kicks in for array responses as well, not sure if this is desirable');
              _.extend(error, body);
            } else {
              // handles numbers, booleans, etc. assigning as cause of failure
              error = new Error(response.statusMessage);
              if (!_.isUndefined(body)) {
                error.cause = body;
              }
            }
            // additional HttpError properties eventually set below
          }
          if (error) {
            // completes HttpError construction
            diag.debug.assertIsError(error, 'should operate true Error instances');
            error.requestUrl = url;
            if (response) {
              error.statusCode = response.statusCode;
              error.statusMessage = response.statusMessage;
              Object.defineProperty(error, 'rawResponse', {
                value: response,
                enumerable: false
              });
            }
            Object.defineProperty(error, 'rawRequest', {
              value: req,
              enumerable: false
            });
          }

          if (!response) {
            // network connectivity problem
            serverObj.serverInfos = null;
            diag.debug.assertIsError(error);
            if (promiseResponse) {
              rejectResponse(error); // will also rejectResult(error)
            } else {
              rejectResult(error); // promiseResponse not constructed yet
            }
          } else {
            // server information
            serverObj.serverInfos = {
              version: response.headers['x-relution-version'],
              description: response.headers['x-server']
            };
            if (response.statusCode === 503 ||
                response.statusCode === 500 && error.className === 'java.util.concurrent.TimeoutException') {
              // 503 (service unavailable) indicates the server is temporarily overloaded, and unable
              // handling the request. This happens when async delegation timed out on the Java side,
              // usually after about 2 minutes. In this case retry the request until we are done...
              diag.debug.info('server overloaded, retrying request.');
              // here promiseResponse must have been resolved already,
              // we chain anyways because of error propagation
              promiseResponse.thenResolve(ajax<T>(options)).done(resolveResult, rejectResult);
              return; // early exit as result is handled by done call above
            } else {
              // logon session processing
              let sessionUserUuid = response.headers['x-gofer-user'];
              if (sessionUserUuid) {
                serverObj.sessionUserUuid = sessionUserUuid;
              } else if (response.statusCode === 401) {
                // apparently our session is lost!
                serverObj.sessionUserUuid = null;
                diag.debug.assert(() => !!error);
                diag.debug.warn('server session is lost!', error);
                const credentials = serverObj.credentials;
                if (credentials) {
                  // recover by attempting login,
                  // here promiseResponse must have been resolved already,
                  // we chain anyways because of error propagation
                  serverObj.credentials = null;
                  promiseResponse.thenResolve(login(credentials, {
                    serverUrl: serverUrl
                  }).then(() => {
                    diag.debug.assert(() => !!serverObj.sessionUserUuid);
                    diag.debug.info('server session recovered.');
                    return ajax<T>(options);
                  })).done(resolveResult, rejectResult);
                  return; // early exit as result is handled by done call above
                }
              }
//.........这里部分代码省略.........
开发者ID:relution-io,项目名称:relution-sdk,代码行数:101,代码来源:http.ts

示例2: assert

 }).catch(function (e) {
   assert(_.isError(e));
   done();
 });
开发者ID:martinpinto,项目名称:cockroach,代码行数:4,代码来源:api.spec.ts

示例3: info

  info (msg: string) {
    this.msg(LogType.INFO, msg)
  },
  debug (msg: string) {
    this.msg(LogType.DEBUG, msg)
  },
  msg (logType: LogType, msg: string | Error | Object | any[]) {
    if (logType.level < config.log.level) {
      return
    }

    let dateTime = config.log.time
      ? colors.gray(`[${getDateTime()}] `)
      : ''

    if (_.isError(msg)) {
      msg = msg.message
    } else if (_.isPlainObject(msg) || _.isArray(msg)) {
      msg = JSON.stringify(msg)
    }

    if (this.cb) {
      this.cb(msg, logType, dateTime)
    } else {
      let color = colors[logType.color]
      msg = dateTime + color(`[${logType.desc}]`) + ' ' + msg

      if (logType.level >= LogLevel.WARN) {
        console.error(msg)
      } else {
        console.log(msg)
开发者ID:bbxyard,项目名称:bbxyard,代码行数:31,代码来源:log.ts

示例4: isError

export const error = (value: any): value is Error => isError(value)
开发者ID:bcherny,项目名称:tassert,代码行数:1,代码来源:tassert.ts

示例5: logError

 logError(level, message, err) {
   const errorMessage = _.isError(err)
     ? err.message
     : err
   this.log(level, `${message}. Error:${errorMessage}`)
 }
开发者ID:carlosrfernandez,项目名称:ReactiveTraderCloud,代码行数:6,代码来源:logger.ts

示例6:

 args.forEach(arg => {
   if (_.isError(arg)) {
     HoneyBadger.notify(arg)
   }
 })
开发者ID:influxdata,项目名称:influxdb,代码行数:5,代码来源:overrides.ts

示例7: getFile

    if ( !config['configPath'] ) delete config['configPath'];

    return config;

  },

  async getFile ( filePath ) {

    const content = await Utils.file.read ( filePath );

    if ( !content || !content.trim () ) return;

    const config: any = _.attempt ( JSON5.parse, content );

    if ( _.isError ( config ) ) {

      const option = await vscode.window.showErrorMessage ( '[{{displayName}}] Your configuration file contains improperly formatted JSON', { title: 'Overwrite' }, { title: 'Edit' } );

      if ( option && option.title === 'Overwrite' ) {

        await Utils.file.write ( filePath, '{}' );

        return {};

      } else {

        if ( option && option.title === 'Edit' ) {

          Utils.file.open ( filePath );
开发者ID:fabiospampinato,项目名称:template-vscode-extension,代码行数:29,代码来源:config.ts


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