javascript - tag - title of page html
¿Una tarea de trago tiene que devolver algo? (1)
En ejemplos en línea que muestran el uso de gulp, algunas tareas devuelven la transmisión y otras no.
Por ejemplo, sin devolución:
gulp.task(''tsc'', function()
{
gulp.src(''**/*.ts'')
// ...
});
Y el mismo código, con un retorno:
gulp.task(''tsc'', function()
{
return gulp.src(''**/*.ts'')
// ...
});
¿Es necesario devolver el flujo?
Si no devuelve una secuencia, el llamador no esperará el resultado asíncrono de cada tarea ni ninguna tarea dependiente.
Por ejemplo, cuando no se devuelven transmisiones:
$ gulp scripts
[21:25:05] Using gulpfile ~/my-project/gulpfile.js
[21:25:05] Starting ''tsc''...
[21:25:05] Finished ''tsc'' after 13 ms
[21:25:05] Starting ''scripts''...
[21:25:05] Finished ''scripts'' after 10 ms
[21:25:05] Compiling TypeScript files using tsc version 1.0.1.0
Tenga en cuenta que la tarea de scripts
depende de la tarea de tsc
. Informa que tsc
completa en 13 milisegundos, lo que es definitivamente demasiado rápido como para creerlo razonablemente. Luego, la tarea de scripts
parece comenzar y completarse, nuevamente en un período de tiempo muy pequeño. Finalmente, comienza la operación real realizada por tsc
. Claramente, ni tsc
ni scripts
esperaron a que se completara el paso de compilación.
Cuando estas tareas devuelven sus transmisiones, el resultado se ve bastante diferente:
$ gulp scripts
[21:42:25] Using gulpfile ~/my-project/gulpfile.js
[21:42:25] Starting ''tsc''...
[21:42:25] Compiling TypeScript files using tsc version 1.0.1.0
[21:42:32] Finished ''tsc'' after 6.65 s
[21:42:32] Starting ''scripts''...
[21:42:32] Finished ''scripts'' after 204 ms
Aquí la secuencia tiene sentido, y las duraciones informadas cumplen con las expectativas.