TypeScript .9 にアップグレードした後、ライブラリ モジュールのエイリアシングが機能しなくなりました。
例:
foo.d.tsまたはfoo.ts (どちらの拡張子でもかまいません)
declare module Foo {
export class Bar {
}
}
import Baz = Foo;
app.ts
/// <reference path="foo.d.ts" />
var a = new Baz.Bar(); // Compiler error on Baz "Could not find symbol 'Baz'"
var b: Baz.Bar; // Works just fine, no compiler error
var c: Baz.Bar = new Baz.Bar(); // Compiler error on second Baz "Could not find symbol 'Baz'"
var d = new Foo.Bar(); // Works just fine
また、「新しい xyz」である必要はなく、等号の右側にある Baz への参照であることに注意してください。
foo.d.ts内のコードを取得してapp.tsに配置すると、コンパイラ エラーはスローされません。これはコンパイラの問題だと思いますが、何か不足していますか?
更新:これに関する問題レポートを作成しました: http://typescript.codeplex.com/workitem/1182