Compiler errors Typereference无法引用容器
我在编译过程中有一个错误,我不明白Compiler errors Typereference无法引用容器,compiler-errors,typescript,Compiler Errors,Typescript,我在编译过程中有一个错误,我不明白 declare module M { export interface A { value1: string; } } declare module M.A { export interface B { value2: string; } } declare module D { export interface E { test1: M.A[]; // works
declare module M {
export interface A {
value1: string;
}
}
declare module M.A {
export interface B {
value2: string;
}
}
declare module D {
export interface E {
test1: M.A[]; // works
test2: M.A; // error TS4022 : type reference cannot refer to container 'M.A'
test3: {[key: number] : M.A}; // same error
}
}
我想在我的程序中使用M.A和M.A.B接口。可能吗
$tsc --version
Version 0.9.1.1
我对这个问题的看法是一致的
语言规范中的示例在TypeScript中失败:
module X {
export module Y {
export interface Z {
}
}
export interface Y {
}
}
var z: X.Y.Z; // error!
您对规范的阅读是正确的;这是0.9.1.1编译器中的一个错误。代码在0.9.5.0测试版()中编译时没有错误。是的,这是一个很好的解决方案。但在参考文献的«2.2名称空间和命名类型»一章中:(第13页或第20页),似乎可以使用相同的名称。但这个例子不起作用。