開発プロセスで 2 つのタブを開きました (1 つはアプリケーション、もう 1 つはjasmine
テスト スイート)。
したがって、2 つの browserify バンドル (このコードのように見えます) があるため、2 つのgulp-livereload
インスタンスが機能する必要があります。これは私がそれを行う方法です:
var livereloadTestSuite = require('gulp-livereload');
var livereloadDeveloperSuite = require('gulp-livereload'); // port 35728
appBundler.bundle()
.on('error', gutil.log)
.pipe(source('application.js'))
.pipe(gulpif(!options.development, streamify(uglify())))
.pipe(gulp.dest(options.dest))
.pipe(gulpif(options.development, livereloadDeveloperSuite())) // this line
.pipe(notify(function () {
console.log('APP bundle built in ' + (Date.now() - start) + 'ms');
}));
testBundler.bundle()
.on('error', gutil.log)
.pipe(source('specs.js'))
.pipe(gulp.dest('./build/'))
.pipe(livereloadTestSuite())
.pipe(notify(function () {
console.log('TEST bundle built in ' + (Date.now() - start) + 'ms');
}));
gulp.task('default', ['buildDependencies'], function () {
livereloadTestSuite.listen();
livereloadDeveloperSuite.listen({ port: 35728, host: 'localhost' });
// calling bundler & testBundler methods
ジャスミン テスト スイートには次の行があります。
<script src="http://localhost:35729/livereload.js?snipver=1"></script>
そしてアプリテストスイートにはこの行があります
<script src="http://localhost:35728/livereload.js?snipver=1"></script>
Jasmine テスト スイートは再バンドルで正常にリロードされますが、開発スイートはまったくリロードされません。この問題を解決する方法がわかりません