如果我有这个TypeScript代码:
module Foo
{
var x : string ="value";
module Bar
{
export var x = x;
}
}
它编译为以下JavaScript:
var Foo;
(function (Foo) {
var x = "value";
var Bar;
(function (Bar) {
Bar.x = Bar.x;
})(Bar || (Bar = {}));
})(Foo || (Foo = {}));
问题在于Bar.x = Bar.x
行。如何将Bar.x设置为Foo.x?需要export
Foo.x
,所以我可以说Bar.x = Foo.x
吗?
答案 0 :(得分:4)
如果删除命名中的歧义,肯定是可能的:
module Foo
{
var a : string = "My Value";
export module Bar
{
export var x = a;
}
}
alert(Foo.Bar.x);