2

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

4

1 に答える 1