技術向上

プログラミングの学び、気になるテクノロジーやビジネストレンドを発信

namespace【TypeScrypt】

名前空間を区切ることができます。namespace内で定義したものは、exportを記述しない限り、外部から参照することができません。また、必ずnamespace名を経由する必要があります。

namespace sampleA {
    export var str = "string";
}

console.log(sampleA.str);    // <namespace名>.XXXと記述する必要がある

namespace sampleB {
    export class Hoge {
        hello(word: string): string {
            return "Hello, " + word;
        }
    }
    class Fuga{}
    export interface IMiyo {
        hello(word: string): string;
    }
}

namespace sampleC {
//importして別名をつける
    import Piyo = sampleB.Hoge;
    import Fuga = sampleB.Fuga;    // exportしていないため、エラーになる
    import Miyo = sampleB.IMiyo;

    export var str = new Piyo().hello("Type")
}

console.log(sampleC.str);


TypeScript早わかりチートシート【1.5.3対応】 - Build Insider