TypeScript-можно отключить проверку типов?
можно ли отключить проверку типов при использовании TypeScript? Я люблю TypeScript для классов, интерфейса и т. д. Еще для небольших проектов одного человека, которыми я обычно занимаюсь, мне действительно не нужна проверка типа, и боль от не нахождения готовых определений типов для менее распространенных библиотек или последней версии-это боль. Спасибо
2 ответов
в TypeScript типы могут быть необязательными, если они определены таким образом.
поскольку кажется, что самая большая боль, которую вы испытываете, - это поиск определений типов для внешних библиотек, вы можете создать окружающее определение для любой переменной, которую вы не хотите вводить, проверяя:
declare var variableName: any;
например, для jQuery это будет declare var $: any;
. Тогда вы могли бы сделать:$("#test").myNonExistentFunction();
если вы хотели.
альтернативно, при использовании модулей es2015 можно сделать следующий код, чтобы разрешить импортируемая библиотека:
declare module "jquery" {
var _temp: any;
export = _temp;
}
стенографические объявления окружающего модуля (TS 2.0+)
в TS 2.0+ лучший способ отключить проверку типов для импорта-создать .d.ts
файл в вашем проекте и определите стенографические объявления окружающего модуля:
declare module "jquery";
// or use a wildcard
declare module "express-*"; // or use "*" to allow everything
это позволит вам использовать этих продуктов свободно, без проверки типа:
import $ from "jquery";
$.something(); // ok at compile time, but will be an error at runtime
тем не менее, лучший путь в этом сценарии находится в в ваш проект постепенно определяет интерфейс библиотеки, от которой вы зависите, на основе того, что вы используете.