node_modules - Laravel Elixir Sass Compilación-archivos.sass
node_modules laravel (2)
Eso es porque Laravel Elixir usa gulp-sass . Y en el interior de gulp-sass usa node-sass . El nodo-sass usa libsass , que no es compatible con el archivo .ass https://github.com/sass/libsass/issues/16
Puede usar gulp-ruby-sass para compilar .sass a css. O usa el laravel-elixir-ruby-sass .
Soy un gran fanático de la sintaxis .sass
sobre la sintaxis .scss
(porque es mejor, ¡que comience la guerra!), Así que eso es lo que trato de usar. Sin embargo, al intentar compilar un archivo .sass
con Elixir, parece estar intentando usar la sintaxis de scss
para compilar.
elixir(function(mix) {
mix.sass(''styles.sass'');
});
Cuando styles.sass
es
body
background: black
Obtengo los siguientes errores:
$ gulp
[17:54:43] Using gulpfile ~/sites/skynet/gulpfile.js
[17:54:43] Starting ''default''...
[17:54:43] Starting ''sass''...
[17:54:43] Finished ''default'' after 185 ms
[17:54:43] gulp-notify: [Laravel Elixir] Error: invalid top-level expression
[17:54:43] Finished ''sass'' after 198 ms
Pero cambiando styles.sass
(manteniendo la extensión .sass
), a
body {
background: black;
}
Consigo una compilación exitosa. ¿Elixir solo compila la sintaxis de scss
o me falta algún tipo de configuración de configuración? Ayuda muy apreciada!
Gracias a @ mul14 , investigué más profundamente las diferentes bibliotecas en las que gulp-sass cuenta. El problema en github fue una discusión que eventualmente llevó a que alguien apoyara exitosamente la sintaxis de indentación y se fusionara en libsass.
Después de examinar la documentación de node-sass, encontré una opción para activar la sintaxis con sangría. Mirando los argumentos del ingrediente sass de Elixir, ¡esto funcionó para mí!
elixir(function(mix) {
mix.sass(''styles.sass'', false, { indentedSyntax: true });
});
Entonces, al final fue un problema de configuración. ¡Buenas noticias para los usuarios de sintaxis con sangría en todo el mundo!