Reputation: 11
I am trying to automate a task with watch, in gulp. I am a beginner at this.
This is code:
const { series, src, dest, watch } = require('gulp');
const sass = require('gulp-sass');
// Función que compila SASS
function css( ) {
return src('src/scss/app.scss')
.pipe( sass())
.pipe( dest('./build/css') )
}
function minificarcss() {
return src('src/scss/app.scss')
.pipe( sass ({
outputStyle: 'compressed'
}))
.pipe( dest('./build/css') )
}
function watchArchivos() {
watch('src/scss/**/*.scss', css ); // * = La carpeta actual - ** = Todos los archivos con esa extensión
}
exports.css = css;
exports.minificarcss = minificarcss;
exports.watchArchivos = watchArchivos;
This is the error, I have no idea why it happens, all files are well written.
Error:
PS C:\Users\Usuario\Desktop\FestivalMusica_inicio> gulp watchArchivos
[07:47:10] Using gulpfile ~\Desktop\FestivalMusica_inicio\gulpfile.js
[07:47:10] Starting 'watchArchivos'...
[07:47:41] Starting 'css'...
[07:47:41] 'css' errored after 19 ms
[07:47:41] Error: File not found with singular glob: C:/Users/Usuario/Desktop/FestivalMusica_inicio/src/scss/app.scss (if this was purposeful, use `allowEmpty` option)
The path of the directories is well written:
Upvotes: 1
Views: 5456
Reputation: 1
Today I too stumble upon the same error message from gulp while trying my hands on SASS. I ask google for possible reason of error and solution but google couldn't suggest any that could solve this particular issue.
I double checked all my codes for any unintended omissions but find none that could explain the error as suggested by @Helder Gonzaga. But after a long trial and error was ultimately able to figure out that the error was due to long file path name (too deep directory structure) associated with the SASS source file in gulp src() function argument.
MY ERRO LOG (Error due to long file path or using brackets in naming - too deep directory structure)
Microsoft Windows [Version 10.0.19045.4717]
(c) Microsoft Corporation. All rights reserved.
D:\_SASS\SASS Tutorial (build your own CSS library)\complete-asss-tutorial>gulp
[17:27:08] Using gulpfile D:\_SASS\SASS Tutorial (build your own CSS library)\complete-asss-tutorial\gulpfile.js
[17:27:08] Starting 'default'...
[17:27:08] Starting 'buildStyles'...
[17:27:08] 'buildStyles' errored after 51 ms
[17:27:08] Error: File not found with singular glob: D:/_SASS/SASS Tutorial \(build your own CSS library\)/complete-asss-tutorial/index.scss (if this was purposeful, use `allowEmpty` option)
at D:\_SASS\SASS Tutorial (build your own CSS library)\complete-asss-tutorial\node_modules\glob-stream\index.js:343:19
at Array.forEach (<anonymous>)
at EventEmitter.onEnd (D:\_SASS\SASS Tutorial (build your own CSS library)\complete-asss-tutorial\node_modules\glob-stream\index.js:340:11)
at Object.onceWrapper (node:events:627:28)
at EventEmitter.emit (node:events:513:28)
at EventEmitter.emit (node:domain:552:15)
at queue.drain (D:\_SASS\SASS Tutorial (build your own CSS library)\complete-asss-tutorial\node_modules\glob-stream\index.js:35:8)
at Task.release (D:\_SASS\SASS Tutorial (build your own CSS library)\complete-asss-tutorial\node_modules\fastq\queue.js:179:12) at worked (D:\_SASS\SASS Tutorial (build your own CSS library)\complete-asss-tutorial\node_modules\fastq\queue.js:223:10)
at onStat (D:\_SASS\SASS Tutorial (build your own CSS library)\complete-asss-tutorial\node_modules\glob-stream\index.js:106:16)[17:27:08] 'default' errored after 71 ms
SOLUTION: Make file path shallower (No error after file path correction)
Microsoft Windows [Version 10.0.19045.4717]
(c) Microsoft Corporation. All rights reserved.
D:\complete-asss-tutorial>gulp
[17:30:29] Using gulpfile D:\complete-asss-tutorial\gulpfile.js
[17:30:29] Starting 'default'...
[17:30:29] Starting 'buildStyles'...
[17:30:29] Finished 'buildStyles' after 218 ms
[17:30:29] Starting 'watchTask'...
Upvotes: 0
Reputation: 11
Confirm that the file: 'C:/Users/Usuario/Desktop/FestivalMusica_inicio/src/scss/app.scss' is written correctly. Sometimes we forget something. This problem, that's it, the file does not exist.
Upvotes: 1