2015-08-28 12 views
7

Problema: Sto usando gulp-sass e vorrei definire un percorso di caricamento in modo che non debba avere regole @import veramente lunghe per le dipendenze di bower, ad es.gulp-sass funziona per il supporto load_path?

@import "normalize" 

invece di

@import "../../../../../bower_components/bootstrap-sass/assets/stylesheets/bootstrap/normalize" 

Qual è il modo migliore per raggiungere questo obiettivo i quando si utilizza gulp-Sass, che utilizza il motore LibSass per elaborare i file Sass?

+0

Eventuali duplicati: http://stackoverflow.com/questions/24870327/gulp-ruby-sass-unable-to-import-files – cimmanon

+0

Questa non è una domanda duplicata perché nell'esempio fornito, lo sviluppatore usa gulp-ruby-sass che è diverso da gulp-sass in quanto questa variante non usa ruby, ma utilizza invece libsass - una reimplementazione di Sass in C++. – Timidfriendly

+0

Il fatto che la lingua in cui è stato scritto il compilatore Sass sia irrilevante, la soluzione funziona? – cimmanon

risposta

20

Dopo aver lottato con questo mi sono trovato un'opzione in sorso-sass:

Sass ({includePaths: [' ./bower_components/bootstrap-sass/assets/stylesheets']})

Esempio:

var gulp = require('gulp'), 
    sass = require('gulp-sass') 
    notify = require("gulp-notify"); 

var config = { 
    sassPath: './resources/sass', // store the sass files I create 
    bowerDir: './bower_components' 
} 

gulp.task('css', function() { 
    return gulp.src(config.sassPath + '/style.scss') 
    .pipe(sass({ 
     outputStyle: 'compressed', 
     includePaths: [ 
      './resources/sass', 
      config.bowerDir + '/bootstrap-sass/assets/stylesheets', 
      config.bowerDir + '/font-awesome/scss'] 
     }) 
     .on("error", notify.onError(function (error) { 
      return "Error: " + error.message; 
     }))) 
    .pipe(gulp.dest('./public/css')); 
}); 
Problemi correlati