Typescript: заставить tsconfig выдавать одну папку, но не другую папку - PullRequest
0 голосов
/ 19 декабря 2018

Я конвертирую существующий проект из js в машинопись.Я хочу иметь возможность установить noEmit = true в одной папке, но в другой папке есть noEmit = false.

. Причина в том, что мой клиентский (угловой) код настроен через веб-пакет и мне не нужна машинописьсоздать Javascript для меня.Хотя сервер (Node / Express) все еще должен быть сгенерирован в javascript.

Я пробовал несколько разных комбинаций, но, похоже, не нашел правильного способа сделать это.

Мое единственное решение, которое мне удалось получить, - это два tsconfig.json и выполнение такой команды, как tsc -p src\server\tsconfig && tsc -p src\client\tsconfig

. Я понимаю, что это не очень хорошее решение, ноЯ не получил ни tsconfig для работы, ни базовый tsconfig.

Вот структура папок ..

|-Src
|--/client
|--/server

Есть ли способ добиться этого с помощью одной команды tsc?Или есть лучший способ форматировать проект?Спасибо !!

Ответы [ 2 ]

0 голосов
/ 01 августа 2019

Я не думаю, что есть другое решение, кроме нескольких файлов tsconfig.json, как вы уже делаете, согласно этому ответу и этому комментарию .

Вы можете сделать это немного более упорядоченным, имея tsconfig.json для компиляции и отдельный tsconfig-build.json, который вы используете в вашем package.json для сборки, то есть:

// package.json
{
    "scripts": {
        "build": "tsc -p tsconfig-build.json"
    },
    // ...
}

С этой настройкой (при условиипо умолчанию tsconfig.json находится в вашем корне ), при запуске tsc из командной строки будет использоваться файл по умолчанию tsconfig.json, а при запуске npm run build будет использоваться tsconfig-build.json.Вы также можете иметь одно расширение tsconfig от другого , поэтому, если у вас много общих опций, вы можете добавить tsconfig-base.json, от которого расширяются оба конфига.

0 голосов
/ 19 декабря 2018

Вы, вероятно, можете достичь желаемого с помощью свойства exclude в файле tsconfig.json.

Проверьте документацию для свойства exclude

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...