Il nostro team ha utilizzato il generatore angolare con yeoman per impalcare la nostra app Web. Utilizza browsersync per gestire le ricariche live, che vogliamo. Tuttavia, ci siamo appena schierati sul nostro server di sviluppo, e ora quando due sviluppatori stanno usando il comando gulp service allo stesso tempo, entrambi vengono mostrati nella stessa finestra (cioè un tipo di sviluppatore su una finestra, compare nella finestra degli altri sviluppatori anche). Credo che ciò sia dovuto alle funzionalità di test cross-device di BrowserSync, tuttavia non sono a conoscenza di come disabilitare questa funzione. Se qualcuno sa come fare questo (preferibilmente senza disabilitare la nostra funzionalità live-reload) per favore fatemelo sapere!Come disabilitare la funzionalità di mirroring delle azioni tra dispositivi di BrowserSync? (GhostMode)
Di seguito è riportato il codice per il mio file server.js nella cartella Gulp, che è lo stesso di quello fornito con il generatore angolare, quindi speriamo che questo possa aiutare alcune persone.
'use strict';
var path = require('path');
var gulp = require('gulp');
var conf = require('./conf');
var browserSync = require('browser-sync');
var browserSyncSpa = require('browser-sync-spa');
var util = require('util');
var proxyMiddleware = require('http-proxy-middleware');
function browserSyncInit(baseDir, browser) {
browser = browser === undefined ? 'default' : browser;
var routes = null;
if(baseDir === conf.paths.src || (util.isArray(baseDir) && baseDir.indexOf(conf.paths.src) !== -1)) {
routes = {
'/bower_components': 'bower_components'
};
}
var server = {
baseDir: baseDir,
routes: routes
};
/*
* You can add a proxy to your backend by uncommenting the line bellow.
* You just have to configure a context which will we redirected and the target url.
* Example: $http.get('/users') requests will be automatically proxified.
*
* For more details and option, https://github.com/chimurai/http-proxy-middleware/blob/v0.0.5/README.md
*/
// server.middleware = proxyMiddleware('/users', {target: 'http://jsonplaceholder.typicode.com', proxyHost: 'jsonplaceholder.typicode.com'});
browserSync.instance = browserSync.init({
startPath: '/',
server: server,
browser: browser
});
}
browserSync.use(browserSyncSpa({
selector: '[ng-app]'// Only needed for angular apps
}));
gulp.task('serve', ['watch'], function() {
browserSyncInit([path.join(conf.paths.tmp, '/serve'), conf.paths.src]);
});
gulp.task('serve:dist', ['build'], function() {
browserSyncInit(conf.paths.dist);
});
gulp.task('serve:e2e', ['inject'], function() {
browserSyncInit([conf.paths.tmp + '/serve', conf.paths.src], []);
});
gulp.task('serve:e2e-dist', ['build'], function() {
browserSyncInit(conf.paths.dist, []);
});
Grazie per la risposta! Questa è in realtà la soluzione su cui ci siamo basati quando ci siamo resi conto che se avessimo usato la mia prima soluzione, avremmo dovuto disabilitare manualmente la modalità ghost per ogni nuovo progetto. Questa è sicuramente la strada da percorrere, grazie! – turner