2
我完全困惑我在做什么错在这里。量角器和Typescript:类定义在不同的文件,但相同的模块导致'声明异常'
说我有一个测试文件“SimpleTest.ts”包含以下:
/// <reference path="../otherdir/simpleclass.ts" />
module MyModule.SubModule {
describe("this test",() => {
var myObject: SimpleClass = new SimpleClass("");
it("doesn't even get here!",() => {
expect(myObject).toBeDefined();
});
});
}
此处的类是在不同的文件中定义,但在同一模块中,这样的:
module MyModule.SubModule {
export class SimpleClass {
constructor(private myMember: string) {}
}
}
所以这两个定义都驻留在同一个模块中。 Typescript编译好,一切看起来都OK。
但是当我开始量角器(是的,我已经配置“功能:”路径正确的文件),它与错误
this test
encountered a declaration exception - fail
我知道,我能得到它通过使用模块的工作停止.export和require,但这不是一个好的解决方案。
首先,我松散了打字稿的类型检查,当我使用javascript'require'时,类型检查是我首先使用它的原因之一。
二,我认为这是糟糕的风格混合普通的JavaScript到打字稿代码。
任何帮助,将不胜感激!
由于提前, 问候, 约尔格
TypeScript将很高兴地为commonjs和amd模块输出代码。我正在使用Jasmine(这是Protractor使用的)模块 - 我正在使用AMD,这有点棘手,因为你需要让Jasmine等待,直到你准备好了。 http://www.stevefenton.co.uk/Content/Blog/Date/201407/Blog/Combining-TypeScript-Jasmine-And-AMD-With-RequireJS/ – Fenton 2014-09-26 07:49:13
您是否找到了解决方案?我有同样的问题,直到现在还找不到任何解决方案。 – Milton 2015-03-11 17:47:24