Pregunta: El
siguiente es el problema que encontré, estaba siguiendo un tutorial y terminé intentando compilar el siguiente scss
archivo e intentando generar código CSS a partir de él,
.fatty{
width: percentage(6/7);
}
usando la siguiente gulpfile.js
tarea:
var gulp = require('gulp');
var sass = require('gulp-sass');
gulp.task('sass', function () {
return gulp.src('app/scss/styles.scss')
.pipe(sass())
.pipe(gulp.dest('app/css'))
});
Entonces el error que obtengo es el siguiente:
~/htdocs/Learning/gulp1/node_modules/gulp-sass/index.js:66
let sassMap;
^^^
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
// stacktrace here...
Solución:
Entonces me muestra el index.js
archivo que está dentro de mi módulo gulp-sass (que está básicamente bloqueado y no debe editarse). Pero si voy con fuerza y agrego el "use_strict"
en la parte superior de ese index.js
archivo, ejecuta mi tarea sin problemas.
Estaba indefenso, ¡así que sigo usando esto como la solución! Pero luego de pasar por otras preguntas y respuestas sobre SO , vi la siguiente respuesta de la siguiente manera:
sudo npm install -g n
sudo n stable
y antes actualicé mis NodeJs (a Version10.x), y luego reconstruí Gulp ejecutando los siguientes comandos como Terminal me indicó:
npm rebuild node-sass --force
Y todo está bien. Así es como se resolvió. Deshice los cambios que hice para el index.js
archivo del módulo gulp. Y ahora funciona sin problemas.
¡Espero que esta respuesta sea útil para alguien por ahí!