Як використовувати `@ ts-ignore` для блоку


118

// @ts-ignoreКоментар дозволяє компілятор машинопису ігнорувати рядок нижче нього.

Як можна ігнорувати цілий блок коду за допомогою Typescript?


Навіть не @ts-ignoreпрацює на одному рядку в машинописі 2.4.2. Я підвищений до "typescript": "2.6.1"і після цього вона працювала.
P.Brian.Mackey

Відповіді:


100

Ви не можете. Це відкрита проблема в TypeScript: https://github.com/Microsoft/TypeScript/isissue/19573


3
Чи відповідь все-таки справедлива через два роки? Проблема з машинописним текстом залишається відкритою, але чи є якісь інші події?
гайта

4
@gaitat, щоб знайти прогрес у питанні github, прочитайте випуск github. Якщо у питанні github немає прогресу, прогрес у питанні не спостерігається.
mikemaccana

57

Ви не можете.

Як вирішення, ви можете використовувати // @ts-nocheckкоментар у верхній частині файлу, щоб відключити перевірку типу для цього файлу: https://devblogs.microsoft.com/typescript/announcing-typescript-3-7-beta/

Отже, щоб відключити перевірку блоку (функції, класу тощо), ви можете перемістити його у власний файл, а потім скористатися коментарем / прапором вище. (Це не так гнучко, як відключення на основі блоку, звичайно, але це найкращий варіант, який доступний на даний момент.)


8
Щоб уточнити, ви все одно не можете. Відключення перевірки типу для файлу відрізняється від блокування на рівні блоку.
garrettmaring

1
@garrettmaring Погоджено; відключення рівня файлів - це лише пробіл зупинки. (не завжди зручно або навіть можливо розділити певний блок на власний файл - але це ближче до ігнорування рівня блоку, ніж тонни @ts-ignoreкоментарів)
Venryx
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.