在TypeScript中如何访问模块外定义的类?

81 阅读1分钟

"在TypeScript中,要访问模块外定义的类,需要使用合适的导入和导出语法。以下是几种常见的方法:

  1. 使用export关键字将类导出:
// someClass.ts
export class SomeClass {
  // ...
}

然后在另一个文件中使用import语句导入该类:

// main.ts
import { SomeClass } from './someClass';
const instance = new SomeClass();
  1. 使用export default将类作为默认导出:
// someClass.ts
export default class SomeClass {
  // ...
}

然后在另一个文件中使用import语句导入该类:

// main.ts
import SomeClass from './someClass';
const instance = new SomeClass();
  1. 如果类定义在全局作用域中(例如在一个额外的.d.ts声明文件中),可以直接使用:
// global.d.ts
declare class SomeClass {
  // ...
}

然后在任何地方都可以直接使用该类:

// main.ts
const instance = new SomeClass();
  1. 如果类定义在命名空间中,可以使用命名空间限定符来访问:
// someNamespace.ts
export namespace SomeNamespace {
  export class SomeClass {
    // ...
  }
}

然后在另一个文件中使用import语句导入该类:

// main.ts
import { SomeNamespace } from './someNamespace';
const instance = new SomeNamespace.SomeClass();

以上是在TypeScript中访问模块外定义的类的几种常见方法。根据具体的项目需求和模块组织方式,可以选择适合的方式来导出和导入类。"