Скомпилировать только измененный машинописный файл с помощью grunt-ts

Я хотел бы скомпилировать только измененные файлы машинописи с помощью grunt-ts (иначе это было бы очень медленно), но, похоже, я не могу.

  • Я пытался запустить его как параллельную задачу, но в этом случае кажется, что мои обычные часы не работают.
  • Также пытался использовать часы для него, но в этом случае он компилирует все файлы.

Единственный способ, которым я преуспел, состоит в том, чтобы начать grunt-ts как отдельный процесс grunt. Таким образом, он действительно компилирует только измененные файлы, но мне нужно запустить его отдельно

Так что, очевидно, я бы хотел провести всего лишь одно хрюканье.

Любое предложение, как я могу это сделать?

ОБНОВИТЬ:

Что странно, что сегодня я сменил настройку, и она работает хорошо.

У меня есть справочный файл для завершения (над папкой приложения) и навигации, а также мой файл компилируется достаточно быстро.

Не уверен, как он это делает, так как компиляция настроена как ложная для ts:dev (это просто для поддержки моего справочного файла).

Также я перестал хрюкать, чтобы попытаться запустить что-то еще. Но файлы js не были обновлены, поэтому ничего больше не компилирует их.

Странно, но сейчас это работает, как я и хотел. (хотя не уверен, почему grunt-ts компилирует файл, если у меня по умолчанию false, но...)

Мой конфиг:

ts: {
    options: {
        compile: false,
        comments: false,
        target: 'es5',
        module: 'amd',
        sourceMap: true,
        sourceRoot: '',
        mapRoot: '',
        declaration: false,
        noImplicitAny: false,
        fast: 'never'
    },
    initDev: {
        src: [
            '<%= yeoman.app %>/**/*.ts'
        ],
        reference: '_references.ts',
        options: {
            compile: true
        }
    },
    dev: {
        src: [
            '<%= yeoman.app %>/**/*.ts'
        ],
        reference: '_references.ts'
    }
}

...

watch: {
    ts: {
        files: '<%= yeoman.app %>/**/*.ts',
        tasks: ['ts:dev']
    }
}

Я запускаю ts:initDev при запуске grunt и запускаю ts: dev при изменении файлов.

ОБНОВЛЕНИЕ 2:

Извините, кажется, что что-то еще компилирует файлы. Я настроил TSC для компиляции в настройках редактора. Что в порядке.

1 ответ

Я лично использую самого наблюдателя за машинописью. Я также использую (отказ от ответственности, я написал это) fast-live-reload для выполнения других задач, таких как синхронизация папок, запуск компаса и т. Д.

Другие вопросы по тегам