【发布时间】:2015-12-20 00:00:34
【问题描述】:
我在 Angular.js 项目中使用 TypeScript 并使用 Jasmine 进行测试。
当我使用spyOn 模拟对象上的方法时,Jasmine 会将该方法替换为具有calls 属性的函数,以便您可以执行例如thing.method.calls.count()。
问题是 TypeScript 编译器不知道方法上的 calls 属性并给出编译器错误:
property 'calls' does not exist on type '() => IPromise<IReport[]>'
如何解决此错误?我是否需要定义一个具有函数签名和对象属性的新接口?我尝试过使用不同的界面配置,但到目前为止没有运气。
【问题讨论】:
-
你是否从确定类型的 repo 中提取了 jasmine.d.ts?
-
是的,我引用了 jasmine.d.ts。
标签: angularjs typescript jasmine