0Pricing
TypeScript Academy · Урок

Расширение модулей

Разберитесь, как расширять или изменять существующие модули и библиотеки в соответствии с потребностями проекта

«Расширение модулей» — бесплатный урок TypeScript Academy на CoddyKit. Это урок 3 из 3. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения 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.
  • Адаптации модулей к требованиям конкретного проекта.

Практическое задание

Практическое задание

Расширьте объект Request из модуля express, добавив пользовательский метод isAuthenticated. Используйте этот метод в примере функции промежуточного программного обеспечения.

Поздравляем

Поздравляем!

Вы научились использовать расширение модулей для дополнения или изменения существующих модулей в TypeScript. Практикуйтесь в этом навыке, чтобы настраивать сторонние библиотеки и расширять возможности своих приложений!

Расширение модулей — иллюстрация 10

Часто задаваемые вопросы

Урок «Расширение модулей» бесплатный?

Да — полный текст урока «Расширение модулей» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс TypeScript Academy, подпишись на CoddyKit PRO. Курс TypeScript Academy содержит 3 уроков всего.

Чему я научусь в уроке «Расширение модулей»?

Разберитесь, как расширять или изменять существующие модули и библиотеки в соответствии с потребностями проекта Ты практикуешь TypeScript Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать TypeScript Academy?

Предыдущий опыт не требуется. TypeScript Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 3.

Сколько времени занимает урок «Расширение модулей»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке TypeScript Academy?

Да. Каждый урок TypeScript Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Строгая проверка на null
  2. Динамическое создание типов
  3. Расширение модулей
← Назад к TypeScript Academy