當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript data.Promise類代碼示例

本文整理匯總了TypeScript中@orbit/data.Promise的典型用法代碼示例。如果您正苦於以下問題:TypeScript Promise類的具體用法?TypeScript Promise怎麽用?TypeScript Promise使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了Promise類的10個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: reset

 reset(): Promise<void> {
   for (let key in Orbit.globals.localStorage) {
     if (key.indexOf(this.namespace) === 0) {
       Orbit.globals.localStorage.removeItem(key);
     }
   }
   return Orbit.Promise.resolve();
 }
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:8,代碼來源:source.ts

示例2: processor

      .then(() => {
        let result = Orbit.Promise.resolve();

        transform.operations.forEach(operation => {
          let processor = transformOperators[operation.op];
          result = result.then(() => processor(this, operation));
        });

        return result;
      });
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:10,代碼來源:source.ts

示例3: activate

 activate(coordinator, options): Promise<any> {
   activatedCount++;
   if (activatedCount === 1) {
     assert.strictEqual(this.name, 's2', 'expected order');
   } else if (activatedCount === 2) {
     assert.strictEqual(this.name, 's1', 'expected order');
   } else if (activatedCount === 3) {
     assert.strictEqual(this.name, 's3', 'expected order');
   }
   return Orbit.Promise.resolve();
 }
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:11,代碼來源:coordinator-test.ts

示例4: deactivate

 deactivate(): Promise<any> {
   deactivatedCount++;
   if (deactivatedCount === 1) {
     assert.strictEqual(this.name, 's3', 'expected reverse order');
   } else if (deactivatedCount === 2) {
     assert.strictEqual(this.name, 's1', 'expected reverse order');
   } else if (deactivatedCount === 3) {
     assert.strictEqual(this.name, 's2', 'expected reverse order');
   }
   return Orbit.Promise.resolve();
 }
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:11,代碼來源:coordinator-test.ts

示例5: handleFetchResponseError

 protected handleFetchResponseError(response: any, data?: any): Promise<any> {
   let error;
   if (response.status >= 400 && response.status < 500) {
     error = new ClientError(response.statusText);
   } else {
     error = new ServerError(response.statusText);
   }
   error.response = response;
   error.data = data;
   return Orbit.Promise.reject(error);
 }
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:11,代碼來源:jsonapi-source.ts

示例6: activate

  activate(coordinator: Coordinator, options: ActivationOptions = {}): Promise<any> {
    this._coordinator = coordinator;

    if (this._customLogLevel === undefined) {
      this._logLevel = options.logLevel;
    }

    if (this._sourceNames) {
      this._sources = this._sourceNames.map(name => coordinator.getSource(name));
    } else {
      this._sources = coordinator.sources;
    }

    return Orbit.Promise.resolve();
  }
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:15,代碼來源:strategy.ts

示例7: activate

  activate(options: ActivationOptions = {}): Promise<void> {
    if (!this._activated) {
      if (options.logLevel === undefined) {
        options.logLevel = this._defaultActivationOptions.logLevel;
      }

      this._currentActivationOptions = options;

      this._activated = this.strategies.reduce((chain, strategy) => {
        return chain
          .then(() => strategy.activate(this, options))
      }, Orbit.Promise.resolve());
    }

    return this._activated;
  }
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:16,代碼來源:coordinator.ts

示例8: deactivate

 deactivate(): Promise<void> {
   if (this._activated) {
     return this._activated
       .then(() => {
         return this.strategies.reverse().reduce((chain, strategy) => {
           return chain
             .then(() => strategy.deactivate());
         }, Orbit.Promise.resolve());
       })
       .then(() => {
         this._activated = null;
       });
   } else {
     return Orbit.Promise.resolve();
   }
 }
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:16,代碼來源:coordinator.ts

示例9: _push

  _push(transform: Transform): Promise<Transform[]> {
    const requests = getTransformRequests(this, transform);

    if (this.maxRequestsPerTransform && requests.length > this.maxRequestsPerTransform) {
      return Orbit.Promise.resolve()
        .then(() => {
          throw new TransformNotAllowed(
            `This transform requires ${requests.length} requests, which exceeds the specified limit of ${this.maxRequestsPerTransform} requests per transform.`,
            transform);
        });
    }

    return this._processRequests(requests, TransformRequestProcessors)
      .then(transforms => {
        transforms.unshift(transform);
        return transforms;
      });
  }
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:18,代碼來源:jsonapi-source.ts

示例10: _processRequests

  protected _processRequests(requests, processors): Promise<Transform[]> {
    let transforms: Transform[] = [];
    let result: Promise<void> = Orbit.Promise.resolve();

    requests.forEach(request => {
      let processor = processors[request.op];

      result = result.then(() => {
        return processor(this, request)
          .then(additionalTransforms => {
            if (additionalTransforms) {
              Array.prototype.push.apply(transforms, additionalTransforms);
            }
          });
      });
    });

    return result.then(() => transforms);
  }
開發者ID:SmuliS,項目名稱:orbit.js,代碼行數:19,代碼來源:jsonapi-source.ts


注:本文中的@orbit/data.Promise類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。