1. namespace Components {
    2. export class Header {
    3. constructor() {
    4. const elem = document.createElement('div');
    5. elem.innerText = 'This is Header';
    6. document.body.appendChild(elem);
    7. }
    8. }
    9. export class Content {
    10. constructor() {
    11. const elem = document.createElement('div');
    12. elem.innerText = 'This is Content';
    13. document.body.appendChild(elem);
    14. }
    15. }
    16. export class Footer {
    17. constructor() {
    18. const elem = document.createElement('div');
    19. elem.innerText = 'This is Footer';
    20. document.body.appendChild(elem);
    21. }
    22. }
    23. }
    1. // 命名空间相互引用的方式
    2. /// <reference path = './components.ts'>
    3. namespace Home {
    4. export class Page {
    5. constructor() {
    6. new Components.Header()
    7. new Components.Content()
    8. new Components.Footer()
    9. }
    10. }
    11. }

    子命名空间

    1. namespace Components {
    2. export namespace SubComponents {
    3. export class Test {}
    4. }
    5. export interface User {
    6. name: string
    7. }
    8. export class Header {
    9. constructor() { }
    10. }
    11. }
    12. Componnets.SubCompents.Test
    13. Components.User