Скомпилировать только измененный машинописный файл с помощью 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 для выполнения других задач, таких как синхронизация папок, запуск компаса и т. Д.