Мой файл gulp выглядит примерно так (упрощенно)
function copyAssets () {
return src(paths.assets, { base: './' })
.pipe(cache('asset-files'))
.pipe(dest(paths.build))
}
// Some more task functions
const build = parallel(copyAssets, brewCoffee, buildTypescript)
module.exports = { build, watch: series(build, watchFiles) }
Но теперь, когда я перечисляю его, он выглядит так:
[15:29:30] Tasks for .....
[15:29:30] ├─┬ <parallel>
[15:29:30] │ └─┬ <parallel>
[15:29:30] │ ├── copyAssets
[15:29:30] │ ├── brewCoffee
[15:29:30] │ └── buildTypescript
[15:29:30] └─┬ <series>
[15:29:30] └─┬ <series>
[15:29:30] ├─┬ <parallel>
[15:29:30] │ ├── copyAssets
[15:29:30] │ ├── brewCoffee
[15:29:30] │ └── buildTypescript
[15:29:30] └── watchFiles
И запуск таких вещей, как gulp build
, будетскажем, что задача не существует.
Если я обертываю функцию series / paralel в анонимную функцию, я вижу, что она появляется в списке (вот так)
const build = () => parallel(copyAssets, brewCoffee, buildTypescript)
module.exports = { build, watch: () => series(build, watchFiles) }
Но тогда, когдаработает gulp build
Я получаю
Did you forget to signal async completion?
как ошибку.
Я знаю, что в какой-то момент это сработало (несколько месяцев назад). Но сейчас по какой-то причине этого больше нет. Если я запускаю gulp --version
, вывод будет:
CLI version: 2.2.0
Local version: 4.0.0
edit: Хммм. Кажется, это работает
module.exports = { build: () => build(), watch: () => series(build, watchFiles)() }
Но я сомневаюсь, что именно так я и должен на самом деле делать эти вещи ...
edit2: Нет, все еще не работает, он работает сейчас и ждет завершения. И затем говорит ту же ошибку, что и раньше: The following tasks did not complete: build