aktualisieren Wenn ich gulp
starten, alles funktioniert wie es sein sollte, aber wenn ich gulp clean
(entfernt bauen Ordner) starten und ich starten dann gulp
wieder geht es wie folgt:Gulp lädt nur CSS nach Browser
- Die Browser öffnet
- die html-Datei geladen wird, ohne Auszeichnungs
- Browser-Synchronisation wird der Browser
- Nun werden die CSS-Datei geladen und hTML mit Markierung zeigt sich
Wenn meine Konsole Überprüfung, ich main.css can't be found
einen Fehler feststellen, aber es ist auf jeden Fall geladen, wenn ich die Quellen Registerkarte überprüfen ..
gulp.task('compass', function(){
gulp.src('_sass/**/*.scss')
.pipe(compass({
css: 'css/',
sass: '_sass/',
image: 'images/',
logging: true,
style: 'compressed'
}))
.on('error', function(error){
console.log('Compass Error')
console.log(error)
})
.pipe(minifyCSS({
keepBreaks: false,
keepSpecialComments:true
}))
.pipe(gulp.dest('css/'));
console.log('COMPASS')
});
gulp.task('css', function(){
gulp.src('_css/**/*.css')
.pipe(gulp.dest('css/'))
});
gulp.task('js', function() {
gulp.src(['_scripts/plugins/*.js','_scripts/main.js'])
.pipe(concat(pkg.name + '.js'))
.pipe(gulp.dest('scripts/'))
.pipe(rename(pkg.name + '.min.js'))
.pipe(uglify())
.pipe(gulp.dest('scripts/'));
gulp.src(['_scripts/vendor/*.js'])
.pipe(concat(pkg.name + '.js'))
.pipe(gulp.dest('scripts/'))
.pipe(rename('vendors.min.js'))
.pipe(uglify())
.pipe(gulp.dest('scripts/'));
});
gulp.task('html', ['jekyll'], function() {
// --> Minhtml
gulp.src([
path.join('_site/', '*.html'),
path.join('_site/', '*/*/*.html'),
path.join('_site/', '*/*/*/*.html')
])
.pipe(htmlmin({collapseWhitespace: true}))
.pipe(gulp.dest('_site/'))
.pipe(browserSync.reload({stream:true}));
console.log('HTML')
});
gulp.task('html-watch',['html'], function(done){
browserSync.reload();
done();
});
gulp.task('browser-sync', function() {
browserSync.init(null, {
server: {
baseDir: './_site/'
},
browser: "google chrome"
});
});
gulp.task('default', ['css', 'compass', 'js', 'html'], function (event) {
//--> HTML
gulp.watch([
path.join('./', '*.html'),
path.join('./', '*/*.html'),
path.join('./', '*/*.md'),
path.join('./', '*/*.markdown'),
'!_site/*.html',
'!_site/*/*.html'
], ['html-watch']);
//--> JS & SASS tasks
gulp.watch('_sass/**/*.scss', ['compass']);
gulp.watch('_scripts/**/*.js', ['js']);
// ---> CSS
gulp.watch('_css/**/*.css', ['css']);
//After compass & sass tasks are run, start jekyll
gulp.watch(['css/*.css', 'scripts/*.js'],['jekyll-watch']);
gulp.run('browser-sync');
});
// Clean build folders
gulp.task('clean', function (cb) {
del.sync([
'scripts',
'css',
'_site'
], cb);
});
Dies funktioniert auch nicht, html lädt immer noch ohne Markierung – Greg
Scheint, dass Ihre Standardaufgabe nicht richtig auf '['css', 'compass', 'js', 'html']' zu Ende wartet. Sie sollten ein Versprechen zurückgeben, damit dies ordnungsgemäß funktioniert. Auf 'css' und' scss' Aufgabe, fügen Sie einfach 'return' vor gulp.src: ' return gulp.src ('_ css/**/* CSS') '' return gulp.src ('_ sass/**/*. scss ') ' – lofihelsinki
Auf' js' Aufgabe ist das ein bisschen kompliziert, da es zwei 'gulp.src's hat, aber du kannst [hier (github)] (https://github.com/) gulpjs/gulp/issues/1181) zur Beratung oder teilen Sie es auf zwei Aufgaben. – lofihelsinki