跳到主要内容

TypeScript 如何允许模块外定义的类可以访问?

参考答案:

在 TypeScript 中,要使一个类在模块外部可访问,你需要导出(export)该类。当你导出一个类时,其他模块就可以通过 import 语句来引入和使用该类。

下面是一个简单的示例,展示了如何在 TypeScript 中导出和引入类:

首先,假设你有一个名为 MyClass.ts 的文件,其中包含一个你想在模块外部访问的类:

// MyClass.ts
export class MyClass {
  constructor(public name: string) {}

  greet() {
    console.log(`Hello, my name is ${this.name}!`);
  }
}

在这个例子中,MyClass 类使用 export 关键字进行了导出,这意味着其他模块可以引入它。

然后,在另一个模块中,你可以使用 import 语句来引入 MyClass

// AnotherModule.ts
import { MyClass } from './MyClass';

const myInstance = new MyClass('Alice');
myInstance.greet(); // 输出 "Hello, my name is Alice!"

在这个例子中,AnotherModule.ts 通过 import { MyClass } from './MyClass'; 语句引入了 MyClass 类。然后,它创建了一个 MyClass 的实例,并调用了 greet 方法。

请注意,模块路径(在这个例子中是 './MyClass')应该是相对于当前文件的。你需要根据你的项目结构和文件位置来调整模块路径。

通过这种方式,你可以使 TypeScript 中的类在模块外部可访问,并在其他模块中使用它们。