Quindi sto usando Gulp
Sass
con gulp-changed
(ho anche provato gulp-newer con le modifiche di sintassi aggiornate) e guardando tutti i file scss
nelle mie cartelle.Gulp Sass non compila parziali
Quando cambio un file di base scss
, esso verrà compilato senza problemi.
Tuttavia se cambio un partial non compilerà il file sass che ha una dipendenza da quel partial.
Gulp
var SRC = './stylesheets/**/*.scss';
var DEST = './stylesheets';
gulp.task('sass', function() {
return gulp.src(SRC)
.pipe(changed(DEST, { extension: '.css' }))
.pipe(plumber({
errorHandler: handleErrors
}))
.pipe(sourcemaps.init())
.pipe(sass({
includePaths: [
'C:/var/www/mobile 2/stylesheets'
]}))
.pipe(sourcemaps.write('./'))
.on('error', handleErrors)
.pipe(gulp.dest(DEST))
});
cartelle
├── scss
│ └── base.scss
│ ├── _partial1.scss
│ └── _partial2.scss
│ └── anotherBase.scss
│ ├── _anotherBasePartial1.scss
│ └── _anotherBasePartial2.scss
di apportare modifiche al base.scss || anotherBase.scss
modifiche apportate, di apportare modifiche al partial1.scss
nulla.
Come si può vedere nel registro:
[15:14:02] Starting 'sass'... //here i changed _partial1.scss
[15:14:03] Finished 'sass' after 248 ms
[15:18:20] Starting 'sass'...
[15:18:20] Finished 'sass' after 289 ms
[BS] File changed: c:\var\www\mobile 2\stylesheets\sitescss\responsive\tools\base.css
[15:18:24] Starting 'sass'...
[15:18:24] Finished 'sass' after 289 ms
[BS] File changed: c:\var\www\mobile 2\stylesheets\sitescss\responsive\tools\anotherBase.css
Vorrei che per compilare lo SCSS ogni volta che un parziale viene modificato.
lol accidenti dannazione, uno spreco di 50 rep ... Avrei dovuto fare di più: ( –
Hai mai capito questo? Sto cercando di fare la stessa cosa con il mio gulpfile. – JacobTheDev
In realtà, sembra gulp -newer ora sta lavorando con questo! Andando a richiedere un po 'più di test per essere sicuro, ma per quanto posso dire sta funzionando bene con le importazioni – JacobTheDev