2
下面的代码VAR声明隐藏内部模块
interface Foo {
}
declare var Foo: {
new() : Foo;
}
module Bar {
export interface Baz {
}
export declare var Baz: {
new() : Baz;
}
}
function f(p:Foo) {
}
//function b(p:Bar.Baz) {
//}
编译罚款接口,但是如果我在最后两行tsc.exe产生“预期类型”误差 这似乎是宣告里面一个变种评论范围隐藏了接口声明。
任何想法?
你会在这里预期什么样的行为 - 你给了两个同名的东西? – Fenton
我希望如果我需要一个界面,界面会出现,如果我需要一个对象,对象会出现。 TypeScript-Team在'lib.d.ts'中这样做 - 看看http://typescript.codeplex.com/SourceControl/changeset/view/2bee84410e02#typings%2flib.d.ts ...而且无论如何..我真正的问题是,模块内部和外部的使用行为有所不同...... – Nils