如何在Typescript中扩展对象属性的类?

时间:2017-03-21 20:08:50

标签: javascript angularjs typescript

使用Angular 1应用程序,并试图通过“中止”功能扩展我的承诺。当我尝试向deferred.promise添加中止时,显然会出现abort does not exist on type IPromise<{}>错误。'

如何告诉该对象的属性是一个新的内联类,以便我可以这样做?

  deferred.promise.abort = function() {
     deferred.resolve();
  };

1 个答案:

答案 0 :(得分:1)

可以是

interface IAbortableDeferred<T> extends ng.IDeferred<T> {
    promise: IAbortablePromise<T>;
}

const deferred = <IAbortableDeferred<any>>$q.defer();
deferred.promise.abort = function() { ... };

或者更好,

<div class="container">
  <div class="circle"></div>
</div>