@types
Без сомнения, DefinelyTyped является одним из самых больших преимуществ TypeScript, и сообщество задокументировало 90% лучших библиотек JavaScript.
Это означает, что вы можете очень эффективно использовать эти библиотеки, не открывая документацию в отдельном окне (чтобы гарантировать правильность ввода).
Использование @types
@types
Вы можете установить @types
через npm
, как показано в следующем примере, для jquery можете сделать так:
npm install @types/jquery --save-dev
@types
поддерживает глобальные и модульные определения типов.
Глобальные @types
@types
По умолчанию TypeScript автоматически включает любые определения, которые поддерживают глобальное использование. Например, для jquery
вы можете начать использовать глобально $
в своем проекте.
Однако для библиотек (например, jquery
) я обычно рекомендую использовать модули.
Модульные @types
@types
После установки никакой специальной настройки не требуется, вы можете использовать ее как модуль:
import * as $ from 'jquery';
// Теперь вы можете использовать $ в этом модуле :)
Контроль глобальных типов
Наличие типа который становится глобальным автоматически, может быть проблемой для некоторых команд. Вы можете явно указать только те типы, которые вам нужны, используя tsconfig.json
в параметре compilerOptions.types
, например:
{
"compilerOptions": {
"types" : [
"jquery"
]
}
}
Как показано в примере выше, при настройке compilerOptions.types: ['jquery']
разрешается только пакет @types/types
, даже если человек устанавливает другой файл объявления, такой как npm install
@types/node
, его глобальные переменные ( Например, process
) не попадут в ваш код, пока вы не добавите их в tsconfig.json
.
Last updated
Was this helpful?