我不确定如何解决这个问题,也许我做错了。我需要将 SAME 模块 ('A') 分布在不同的文件中(TypeScript 的 JS 输出显示它们将在执行时“合并”)。例子:
---File1.ts---
export module A { export class X { } }
---File2.ts---
export module A { export class Y extends X { } }
这当然将模块包装在“define()”函数中,但是 file2 中的 AX 在 Visual Studio 中显示它不存在的错误(并且智能感知没有显示它)。是否可以如上所示执行此操作?我知道我必须使用“import varname = require(...);”,但这似乎没有任何帮助。
顺便说一句:我知道使用引用,但这没有帮助。
请参阅此处的示例: http: //goo.gl/zlVKRv - JS 代码清楚地显示了对加载多个同名模块进行组合的支持,所以我不确定为什么编译器和智能感知不起作用。对我来说似乎是一个错误。
重申一下:主要问题是我需要编译器和智能感知将依赖模块“视为”来自 file2 的模块。
我希望做的是这样的:
import mod = require("test1");
import A = mod.A;
export module A {
export class Y extends X {
}
}
更新 1:提交此相关请求以使此过程正常工作,或至少类似: https ://typescript.codeplex.com/workitem/1846
更新 2:似乎这个能力在团队的雷达上!8) 一个真正的答案应该在适当的时候出现。