Elegí el implementador de node-sass para libsass porque se basa en node.js.
Instalación de node-sass
- (Requisito) Si no tiene npm, primero instale Node.js.
$ npm install -g node-sassinstala node-sass a nivel mundial -g.
Con suerte, esto instalará todo lo que necesita, si no lee libsass en la parte inferior.
Cómo usar node-sass desde la línea de comandos y scripts npm
Formato general:
$ node-sass [options] <input.scss> [output.css]
$ cat <input.scss> | node-sass > output.css
Ejemplos:
$ node-sass my-styles.scss my-styles.css compila un solo archivo manualmente.
$ node-sass my-sass-folder/ -o my-css-folder/ compila todos los archivos en una carpeta manualmente.
$ node-sass -w sass/ -o css/compila todos los archivos de una carpeta automáticamente cada vez que se modifican los archivos de origen. -wagrega un reloj de cambios en los archivos.
Más opciones útiles como 'compresión' @ aquí . La línea de comando es buena para una solución rápida, sin embargo, puede usar corredores de tareas como Grunt.js o Gulp.js para automatizar el proceso de compilación.
También puede agregar los ejemplos anteriores a los scripts npm. Para utilizar correctamente los scripts npm como alternativa a gulp, lea este artículo completo @ css-tricks.com, especialmente sobre tareas de agrupación .
- Si no hay ningún
package.jsonarchivo en el directorio de su proyecto, $ npm initse creará uno. Úselo con -ypara omitir las preguntas.
- Agregar
"sass": "node-sass -w sass/ -o css/"ascripts en el package.jsonarchivo. Debería verse algo como esto:
"scripts": {
"test" : "bla bla bla",
"sass": "node-sass -w sass/ -o css/"
}
$ npm run sass compilará sus archivos.
Cómo usar con gulp
$ npm install -g gulp instala Gulp a nivel mundial.
- Si no hay
package.json archivo en el directorio de su proyecto, $ npm initse creará uno. Úselo con -ypara omitir las preguntas.
$ npm install --save-dev gulpinstala Gulp localmente. --save-devse suma gulpadevDependencies en package.json.
$ npm install gulp-sass --save-dev instala gulp-sass localmente.
- Configure gulp para su proyecto creando un
gulpfile.jsarchivo en la carpeta raíz de su proyecto con este contenido:
'use strict';
var gulp = require('gulp');
Un ejemplo básico para transpilar
Agregue este código a su gulpfile.js:
var gulp = require('gulp');
var sass = require('gulp-sass');
gulp.task('sass', function () {
gulp.src('./sass/**/*.scss')
.pipe(sass().on('error', sass.logError))
.pipe(gulp.dest('./css'));
});
$ gulp sassejecuta la tarea anterior que compila archivo (s) .scss en la sasscarpeta y genera archivo (s) .css en elcss carpeta.
Para hacer la vida más fácil, agreguemos un reloj para que no tengamos que compilarlo manualmente. Agregue este código a su gulpfile.js:
gulp.task('sass:watch', function () {
gulp.watch('./sass/**/*.scss', ['sass']);
});
¡Todo está listo ahora! Simplemente ejecute la tarea de vigilancia:
$ gulp sass:watch
Cómo usar con Node.js
Como implica el nombre de node-sass, puede escribir sus propios scripts de node.js para transpilar. Si tiene curiosidad, consulte la página del proyecto node-sass.
¿Qué pasa con libsass?
Libsass es una biblioteca que debe ser construida por un implementador como sassC o en nuestro caso node-sass. Node-sass contiene una versión construida de libsass que utiliza de forma predeterminada. Si el archivo de compilación no funciona en su máquina, intenta compilar libsass para su máquina. Este proceso requiere Python 2.7.x (3.x no funciona a partir de hoy). Adicionalmente:
LibSass requiere GCC 4.6+ o Clang / LLVM. Si su sistema operativo es más antiguo, es posible que esta versión no se compile. En Windows, necesita MinGW con GCC 4.6+ o VS 2013 Update 4+. También es posible construir LibSass con Clang / LLVM en Windows.
node-sassestá engulp-sasslas dependencias de , por lo que no es necesario instalarlo localmente.