0Pricing
TypeScript Academy · レッスン

モジュールの拡張

既存のモジュールやライブラリを拡張・変更し、プロジェクトのニーズに適応させる方法を学びます。

「モジュールの拡張」はCoddyKit上の無料TypeScript Academyレッスンです。 これはレッスン3/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはTypeScript Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 TypeScript Academyコースには全3レッスンが含まれています。

モジュール拡張の概要

モジュール拡張の概要

モジュール拡張を使うと、既存のモジュールを拡張または変更できるため、TypeScriptのライブラリやモジュールにカスタムプロパティやメソッドを追加できます。

追加の機能やカスタム型が必要なサードパーティライブラリを扱う場合に、特に役立ちます。

モジュールの拡張 — イラスト1

モジュール拡張とは

モジュール拡張とは

モジュール拡張では、既存のモジュールを再度開き、declare module構文を使って型や機能を追加または変更します。

モジュール拡張の基本例

モジュール拡張の基本例

expressモジュールを拡張して、Requestオブジェクトにカスタムプロパティを追加する例を見てみましょう。

import 'express';

declare module 'express' {
  interface Request {
    user?: { id: string; role: string };
  }
}

拡張したモジュールの使用

拡張したモジュールの使用

モジュールを拡張した後は、アプリケーションで拡張された機能を使用できます。

import express from 'express';

const app = express();

app.use((req, res, next) => {
  req.user = { id: '123', role: 'admin' };
  next();
});

app.get('/', (req, res) => {
  res.send(`User ID: ${req.user?.id}`);
});

サードパーティモジュールへのカスタム型の追加

サードパーティモジュールへのカスタム型の追加

モジュール拡張は、ユースケースを完全にはカバーしていないサードパーティライブラリにカスタム型を追加するためによく使われます。

モジュール拡張時の注意点

モジュール拡張時の注意点

モジュールを拡張するときは、次の点に注意してください。

  • 既存の型を意図せず上書きしないようにしてください。
  • コードを保守しやすくするため、変更内容をドキュメント化してください。
  • グローバルな型が乱雑になるのを避けるため、必要な場合にのみモジュール拡張を使用してください。

実際の使用例

実際の使用例

モジュール拡張は、次のような場面でよく使われます。

  • サードパーティライブラリを拡張して、アプリケーション固有のプロパティを追加する。
  • Express.jsなどのフレームワークにカスタムミドルウェアプロパティを追加する。
  • 特定のプロジェクト要件に合わせてモジュールを適応させる。

練習課題

練習課題

expressモジュールのRequestオブジェクトを拡張して、カスタムのisAuthenticatedメソッドを追加してください。このメソッドをサンプルのミドルウェア関数で使用しましょう。

おめでとうございます!

おめでとうございます!

TypeScriptでモジュール拡張を使い、既存のモジュールを拡張または変更する方法を学びました。このスキルを練習して、サードパーティライブラリをカスタマイズし、アプリケーションを強化しましょう。

モジュールの拡張 — イラスト10

よくある質問

「モジュールの拡張」レッスンは無料ですか?

はい。「モジュールの拡張」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、TypeScript Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 TypeScript Academyコースには全3レッスンが含まれています。

「モジュールの拡張」で何を学びますか?

既存のモジュールやライブラリを拡張・変更し、プロジェクトのニーズに適応させる方法を学びます。 ブラウザで直接実行するハンズオンコードでTypeScript Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

TypeScript Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのTypeScript Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/3です。

「モジュールの拡張」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このTypeScript Academyレッスンでコードを書いて実行できますか?

はい。すべてのTypeScript Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 厳密なnullチェック
  2. 動的な型の作成
  3. モジュールの拡張
← TypeScript Academyに戻る