TypeScript では、クラスを別ファイルに分けて import / export を使って管理できます。
Animal.ts
export class Animal {
name: string;
constructor(name: string) {
this.name = name;
}
speak(): void {
console.log(`${this.name} が鳴いています`);
}
}
main.ts
import { Animal } from './Animal';
const dog = new Animal("ポチ");
dog.speak(); // ポチ が鳴いています
Cat.ts
export default class Cat {
meow(): void {
console.log("にゃーん");
}
}
main.ts
import Cat from './Cat';
const cat = new Cat();
cat.meow(); // にゃーん
.ts 拡張子は省略してもよい(環境による)import type { MyType } で型だけを読み込む(TS 3.8〜)tsconfig.json の baseUrl や paths を使うと import が短くできる{
"compilerOptions": {
"target": "ES2020",
"module": "ESNext",
"moduleResolution": "node",
"outDir": "dist",
"rootDir": "src"
}
}
| 操作 | 方法 |
|---|---|
| クラスのエクスポート | export class クラス名 {} |
| デフォルトエクスポート | export default クラス名 |
| インポート | import { クラス名 } from 'パス' |
| デフォルトインポート | import 任意名 from 'パス' |