Подтвердить что ты не робот

TypeScript компилировать и сохранять комментарии

Мне нравится, когда мои комментарии остаются нетронутыми в файле javascript, по умолчанию компилятор их удаляет. Есть ли параметр tsc для этого? (Вариант использования должен содержать ///reference path =... для тестирования блока chutzpah.)

4b9b3361

Ответ 1

Да, опция -c (или --comments);

Синтаксис: tsc [опции] [файл..]

Примеры: tsc hello.ts
          tsc --out foo.js foo.ts
          tsc @args.txt

Параметры:
  -c, --comments          ...

Ответ 2

Комментарии, начинающиеся с /*!, сохраняются.

Пример:
/*! this comment remains untouched */
/* but this one will be removed */

Ответ 4

В настоящее время используется 1.6.2, и, по-видимому, комментарии сохраняются по умолчанию. Единственный связанный с комментариями флаг в компиляторе - это удаление комментариев. Согласно документам:

- removeComments
Удалите все комментарии, кроме комментариев с заголовка copy-right, начинающегося с /! *

Ответ 5

С 2015 года вы можете создать tsconfig.json в своем проекте и добавить "removeComments": false к свойству "compilerOptions", чтобы сохранить свои комментарии в результирующих файлах javascript.


1. Создайте файл tsconfig.json для вашего проекта с вашего терминала (при необходимости)

tsc -init

2. Добавьте "removeComments": false в ваш tsconfig.json файл внутри свойства "compilerOptions"

В конце вы должны ожидать, что содержимое вашего файла tsconfig.json будет выглядеть следующим образом:

{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es5",
        "noImplicitAny": false,
        "sourceMap": false,
        "removeComments": false
    },
    "exclude": [
        "node_modules"
    ]
}

3. Скомпилируйте ваш .ts файл в файл .js с вашего терминала

  • Используйте tsc myFile.ts, чтобы оставить свои комментарии
  • Используйте tsc --removeComments myFile.ts, чтобы удалить ваши комментарии.

Подробнее о tsconfig.json параметрах компилятора можно узнать на Typcriptlang.org tsconfig.json page.

Кроме того, согласно Typescript документации, установка true или false в свойство "removeComments" не будет иметь эффект на комментариях заголовка copy-right, начинающийся с /*!. Таким образом, они всегда будут отображаться в ваших файлах .js.

Ответ 6

Chutzpah 2.2 теперь поддерживает TypeScript изначально, поэтому вам не нужно беспокоиться об этом. Вы можете запустить Chutzpah непосредственно в файле .ts, и он будет запускать ваши тесты.