Birçok insan için ortak olabileceğini düşündüğüm bir sorunum var, ama doğru değilim. Bu yüzden birilerinin yardım edebileceğini umuyorum, çünkü cevabı Gulp belgelerinde bulamıyorum.Gulp Livereload?
'use strict';
var gulp = require('gulp');
var jade = require('gulp-jade');
var gutil = require('gulp-util');
var stylus = require('gulp-stylus');
var jeet = require('jeet');
var nib = require('nib');
var uglify = require('gulp-uglify');
var livereload = require('gulp-livereload');
var sources = {
jade: "jade/**/*.jade",
partials: "partials/**/*.jade",
stylus: "styl/**/*.styl",
scripts: "js/**/*.js"
};
// Define destinations object
var destinations = {
html: "dist/",
css: "dist/css",
js: "dist/js"
};
// Compile and copy Jade
gulp.task("jade", function(event) {
return gulp.src(sources.jade)
.pipe(jade({pretty: true}))
.pipe(gulp.dest(destinations.html))
});
// Compile and copy Stylus
gulp.task("stylus", function(event) {
return gulp.src(sources.stylus).pipe(stylus({
use: [nib(), jeet()],
import: [
'nib',
'jeet'
],
style: "compressed"
})).pipe(gulp.dest(destinations.css));
});
// Minify and copy all JavaScript
gulp.task('scripts', function() {
gulp.src(sources.scripts)
.pipe(uglify())
.pipe(gulp.dest(destinations.js));
});
// Server
gulp.task('server', function() {
var express = require('express');
var app = express();
app.use(require('connect-livereload')());
app.use(express.static(__dirname+'/dist/'));
app.listen(4000, '0.0.0.0');
});
gulp.task('watch', function() {
livereload.listen();
gulp.watch(sources.jade, ["jade"]);
gulp.watch(sources.partials, ["jade"]);
gulp.watch(sources.stylus, ["stylus"]);
gulp.watch(sources.scripts, ["scripts"]);
});
// Define default task
gulp.task("default", ["jade", "stylus", "scripts", "server", "watch"], function(){
gulp.watch([
sources.jade,
sources.partials,
sources.stylus,
sources.scripts,
]).on('change', function(event) {
livereload.changed();
console.log('File', event.path, 'was', event.type);
console.log('LiveReload is triggered');
});
});
ne olur ben 1'den fazla yeşim dosyası olmasıdır:
Şu anda benim gulpfile.js aşağıdaki içeriğe sahiptir. Çalıştığım zaman - alfabetik sıraya göre 10'cu ve değiştirdiğimde, hemen karaciğer nakli yaptırıyorum. Sorun şu ki, tüm yeşim dosyaları derlenmeden ve hedefe kopyalanmadan önce tarayıcı sekmesini yeniden yükler, bu nedenle şu an üzerinde çalıştığım dosya yenileme gerçekleştiğinde bile derlenmez. Bir görev tamamlandıktan sonra yeniden yüklemeyi zincirlemenin bir yolu var mı?
, ama yine de çok iyi çalışmıyor ben livereload varsayılan görevi tetikler koyduk yüzden, altta - ben en sonunda ateş etmeyi denedim.Eğer önerdiğin şekilde kullanırsam, tüm bu olanlar, yeşim dosyalarının birincisi derlendikten sonra sevgilinin yükünün patlamasıdır (sanırım bu görev tüm yeşim için idam edilir) yeşim dosyalarının ilk derlenmiş ve sonuncusu geçen dosyası üzerinde çalışıyorum edin., eski sürümü ile yeniden yükler sonra yeniden değil sonra dosyaları her zaman). Bu livereloading sonuçlanır. Ben sonra livereload etmektir gerekenler tüm yeşim dosyaları – bitstream