Многие популярные библиотеки написаны на JavaScript и не содержат типов TypeScript. Чтобы использовать их без ошибок компиляции (например, lodash, react, jquery), необходимо установить файлы деклараций.
Эти файлы описывают типы функций и переменных библиотеки. Обычно они распространяются через npm в области видимости @types. Например, для библиотеки library-name типы будут находиться в пакете @types/library-name. Это позволяет TypeScript «понимать» структуру стороннего кода и предоставлять автодополнение.
В этом уроке мы разберем, как находить, устанавливать и использовать @types пакеты.
- Модуль 1: Введение в TypeScript
- Модуль 2: Примитивные типы
- Модуль 3: Специальные типы
- Модуль 4: Массивы
- Модуль 5: Кортежи (Tuples)
- Модуль 6: Объекты
- Модуль 7: Функции
- Модуль 8: Union типы
- Модуль 9: Литеральные типы
- Модуль 10: Type Aliases
- Модуль 11: Интерфейсы
- Модуль 12: Type Guards и Narrowing
- Модуль 13: Enums
- Модуль 14: Классы
- Модуль 15: Generics — основы
- Модуль 16: Generics — ограничения
- Модуль 17: Utility Types — базовые
- Модуль 18: Utility Types — работа с Union
- Модуль 19: Utility Types — функции
- Модуль 20: Type Assertions
- Модуль 21: Keyof и Typeof операторы
- Модуль 22: Mapped Types
- Модуль 23: Conditional Types
- Модуль 24: Discriminated Unions
- Модуль 25: Модули и типы
- Модуль 26: Declaration Files
- Что такое .d.ts файлы.
- Declare keyword.
- @types пакеты.
- Модуль 27: Типизация асинхронного кода
- Модуль 28: Практические паттерны
1. Установка типов
В этом задании вы практикуете установку файлов деклараций TypeScript для сторонних библиотек с использованием npm. Для библиотеки lodash необходимо написать команду npm, которая установит соответствующие типы. TypeScript полагается на отдельные пакеты @types для предоставления типов для библиотек JavaScript. Заполните пропуск в команде терминала так, чтобы она корректно выполняла установку типов для lodash. Обратите внимание, что имя пакета должно включать префикс '@types/'.
npm install input1S2. Типы зависимостей
Перед вами список названий npm-пакетов, которые могут встречаться в проектах на TypeScript. Ваша задача — распределить их по двум категориям: «Обычные библиотеки» (стандартные пакеты, такие как react или lodash) и «Пакеты типов» (специальные пакеты, предоставляющие типы для TypeScript, которые всегда начинаются с префикса @types/). Обратите внимание, что пакеты типов устанавливаются отдельно для добавления типизации к JavaScript-библиотекам.
3. Ошибка импорта
В этом фрагменте файла package.json допущена ошибка в названии пакета типов для Node.js в секции devDependencies. Исправьте строку с ошибкой, чтобы проект мог корректно использовать типы TypeScript для Node.js.
4. Алгоритм подключения библиотеки
В этом задании вам нужно восстановить правильную последовательность действий при подключении сторонней JavaScript-библиотеки в TypeScript-проект. Строки ниже описывают ключевые шаги этого процесса, но расположены в случайном порядке. Расставьте их в логическом порядке, отражающем корректную процедуру: от установки библиотеки до её успешного использования в TypeScript-коде.
5. Выбор флага установки
В этом задании вам нужно дополнить команду установки пакета типов для TypeScript, выбрав правильный флаг npm. Пакеты @types содержат декларации типов для библиотек JavaScript и обычно нужны только во время разработки. Выберите из списка подходящий флаг, который сохранит пакет как зависимость для разработки, а не как основную зависимость проекта. Обратите внимание, что у npm есть несколько флагов для управления зависимостями.
npm install @types/node input1S6. Имя пакета типов
В TypeScript, для использования библиотек JavaScript, которые не имеют встроенных типов, часто устанавливают пакеты типов из репозитория DefinitelyTyped. Эти пакеты имеют стандартное именование в формате '@types/имя-библиотеки'. В данном задании вам предоставлено имя популярной библиотеки. Ваша задача — ввести полное название соответствующего пакета типов, включая префикс '@types/'. Убедитесь, что ответ вводится точно, с правильным регистром и без дополнительных пробелов или символов.
Дана библиотека: lodash
Введите полное имя пакета типов для этой библиотеки в текстовое поле ниже.
7. Команда терминала
Из предложенных строк соберите корректную команду терминала для установки пакета типов @types/node как dev-зависимости с помощью npm. Команда должна состоять из четырёх частей: название пакетного менеджера, команда установки, флаг для сохранения как dev-зависимости и имя пакета. Одна из строк лишняя и не должна входить в решение.