0Pricing
TypeScript Academy · Урок

Декораторы в TypeScript

Узнайте, как декораторы добавляют метаданные в код и упрощают разработку во фреймворках, таких как Angular

«Декораторы в TypeScript» — бесплатный урок TypeScript Academy на CoddyKit. Это урок 2 из 3. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения TypeScript Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс TypeScript Academy содержит 3 уроков всего.

Введение в декораторы

Введение в декораторы

Декораторы в TypeScript — это специальные функции, которые позволяют добавлять метаданные или изменять поведение классов, методов и свойств.

Их часто используют в таких фреймворках, как Angular, чтобы упростить разработку.

Декораторы в TypeScript — иллюстрация 1

Как работают декораторы

Как работают декораторы

Декоратор — это функция, применяемая к классу или его членам (методам, свойствам и т. д.).

Например, @Component в Angular — это декоратор, который добавляет метаданные к классу, определяя его как компонент.

Использование встроенных декораторов

Использование встроенных декораторов

В TypeScript есть встроенные декораторы, например:

  • @readonly: делает свойство доступным только для чтения.
  • @enumerable: управляет тем, доступно ли свойство для перечисления.

Эти декораторы помогают напрямую изменять поведение свойств или методов.

Создание простого декоратора

Создание простого декоратора

Вы можете создать собственный декоратор для ведения журнала сообщений или добавления функциональности:

Примените его к свойству: @Log.

function Log(target: any, propertyName: string) {
  console.log(`Property ${propertyName} was accessed`);
}

Декораторы классов

Декораторы классов

Декораторы классов используются для изменения или расширения поведения всего класса:

function SimpleDecorator(constructor: Function) {
  console.log(`${constructor.name} is decorated`);
}

Примените его к классу: @SimpleDecorator.

function SimpleDecorator(constructor: Function) {
  console.log(`${constructor.name} is decorated`);
}

Декораторы методов

Декораторы методов

Декораторы методов изменяют поведение метода класса:

Используйте его для метода: @LogMethod.

function LogMethod(target: any, propertyKey: string, descriptor: PropertyDescriptor) {
  console.log(`Method ${propertyKey} was called`);
}

Использование декораторов в Angular

Использование декораторов в Angular

Angular активно использует декораторы для добавления метаданных к своим компонентам:

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html'
})
export class AppComponent {}

Декоратор @Component определяет класс как компонент Angular.

Рекомендации по использованию декораторов

Рекомендации по использованию декораторов

При использовании декораторов:

  • Делайте их простыми и предназначенными для конкретной задачи.
  • Используйте их для метаданных, а не для сложной логики.
  • По возможности применяйте встроенные декораторы, чтобы сэкономить время.

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

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

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

Декораторы в TypeScript — иллюстрация 10

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

Урок «Декораторы в TypeScript» бесплатный?

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

Чему я научусь в уроке «Декораторы в TypeScript»?

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

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

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

Сколько времени занимает урок «Декораторы в TypeScript»?

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

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

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

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

  1. Вывод типов и контекстная типизация
  2. Декораторы в TypeScript
  3. Модули и пространства имён TypeScript
← Назад к TypeScript Academy