TypeScript基础-命名空间

南山隐士 2022年06月25日 27 0

命名空间

命名空间最主要解决的是, 就是避免命名冲突的问题

例子

namespace A {
  export class Person {
    name: string
    constructor(name: string) {
      this.name = name
    }
  }
}

namespace B {
  export class Person {
    name: string
    constructor(name: string) {
      this.name = name
    }
  }
}

let a = new A.Person('Author:YaoJin')
let b = new B.Person('Author:YaoJin')
console.log(a, b)

像上面的例子中, 我们同一个文件中有一样的Person类,如果我们没有加namespace就会报错, namespace的作用就在于,里面的代码将会是独立的, 个管个的, 如果你想使用里面的某个方法或者属性, 必须export, namespace也可以export, 在外部import 引入

Last Updated: 2022/06/25 19:13:24
TypeScript基础-类型兼容性 TypeScript基础-装饰器