2016-04-22 6 views
0

をリロードしないのはなぜ問題はただ、正しく

方法の仕事をリロードしかし、ときに私のユーザーbrowserSync.stream()(browserSync.reload({ストリーム:真}))ページ
をリロード流れの中で、それは働いていませんbrowsersyncページ

それは私のブラウザの同期のinit関数です

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, 
    middleware: proxyMiddleware('http://0.0.0.0:8080') 
    }; 

    var nodemonConfig = { 
    cwd: path.normalize(__dirname + '/../../'), 
    script: 'server/server.js', 
    ext: 'js json', 
    ignore: ['client/**/*.*'], 
    env: {'PORT': '8080'} 
    }; 
    var serverStarted; 

    nodemon(nodemonConfig) 
    .on('start', function() { 
     if (serverStarted) return; 

     browserSync.init(null, { 
     startPath: '/', 
     open: false, 
     server: server, 
     browser: browser 
     }); 
     serverStarted = true; 
    }); 
} 

プロキシサーバーには、ループバックアプリケーション(この中に問題がある可能性があります)です

スタイルとのscripsストリームがgulp.dest後に/ CSSの/ etc。、なぜthe documentationにあるタスクのガルプストリームから、それはそれを配置するために言及したスクリプトを注入するためのものである

gulp.task('styles-reload', ['styles'], function() { 
    return buildStyles() 
    .pipe(browserSync.stream()); 
}); 


gulp.task('scripts-reload', ['scripts'], function() { 
    return buildScripts() 
    .pipe(browserSync.stream()); 
}); 

答えて

0

をリロードするためのそれの仕事。

BrowserSyncページを手動でリロードする場合は、2つの機能で.reloadを使用して手動でリロードすることができます。それ以外の場合は、リロードタスクにファイルを渡す必要があります。それらのタスクを他の場所から呼び出すことができます。

これに追加するには、2つのタスク(スタイル/スクリプトとそれぞれの再読み込みタスク)を分離する理由はありません。新しいストリームを開始したり、タスク間をマージしたりする必要がないように、destの後にパイプを張ってください。

+0

のthnx しかし、場合にスタイルを変え、私はそれを をストリーミングしたいが、私はできない –

+0

私は答えに言及するものだと - 「それはのように見えるので、あなたは、あなたのリロードタスクにファイルを通過する必要がありますあなたは他の場所からそれらの仕事を呼んでいます。つまり、browserSync.stream()をパイプするとき、注入されるスタイルとスクリプトはbuildScriptsメソッドから返されますか? – JSess