Выбор ответа Senior tsconfig и декларации обновлено

verbatimModuleSyntax

Вопрос

Что делает verbatimModuleSyntax (TS 5.0+)?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Импорты без type остаются в JS как есть, а import type удаляются. Флаг заменил старые importsNotUsedAsValues и preserveValueImports: правило простое, что написано, то и попадёт в JS (кроме явно помеченного type).

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

  1. Переписывает все import в require для совместимости с CommonJS
  2. Импорты без type остаются в JS как есть, а import type удаляютсяправильный ответ
  3. Запрещает default-экспорты, разрешая только именованные экспорты
  4. Включает автоматическую сортировку и удаление неиспользуемых импортов

Разбор

Флаг заменил старые importsNotUsedAsValues и preserveValueImports: правило простое, что написано, то и попадёт в JS (кроме явно помеченного type). Это делает поведение tsc предсказуемым и совпадающим с однофайловыми транспиляторами. Переписывать в require и сортировать флаг не умеет, default-экспорты разрешены.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме