2016-05-31 179 views
4

我正在開發一個快速應用程序。我只使用browserSync來觀看靜態文件,但現在,我想對快速應用程序做同樣的事情。Express和BrowserSync沒有吞嚥?

我看到很多使用Gulp的例子。但我想知道是否有任何解決方案只能使用npm腳本進行管理? (和nodemon?)

我現在的腳本:

"scripts": { 
    "start": "npm run start-server & npm run watch-js", 
    "build-js": "browserify -t babelify -t aliasify -t partialify src/ | uglifyjs > public/app.js", 
    "start-server": "browser-sync start --server 'public/' --files 'public/' --port 9000 --no-ui", 
    "watch-js": "watchify -vd -t babelify -t aliasify -t partialify src/ -o public/app.js", 
    }, 
+0

是否要使用快速後端代替內置的服務器browserSync? –

+0

是的,我想用browserSync –

+1

用戶快速服務器,那麼你可以使用'瀏覽器同步啓動-P'來代理你的快遞服務器。 https://www.browsersync.io/docs/command-line/ –

回答

7

謝謝幫忙@ LIM-H,確實可以將參數--proxy(-P)添加到browser-sync startbrowsersync.io/docs/command-line

您可以在這裏下載演示https://github.com/damienromito/express-sync

啓動Express服務器後,--proxy選項添加到browser-sync start


node app & browser-sync start --proxy 'localhost:9000' --files 'public'" 

對應app.js:

var express = require('express'), 
    app = express(), 
    router = express.Router() 

app.use(router) 
app.use('/public', express.static('public')); 

router.all('/', function (req, res, next) { 

    res.send('<!DOCTYPE html>' + 
      '<html>' + 
      '<head>' + 
       '<title>Whyd Store</title>' + 
       '<link rel="stylesheet" type="text/css" href="public/style.css">' + 
      '</head>' + 
      '<body>' + 
      '<p>Hello World</p>' + 
      '</body>' + 
      '</html>') 
}); 

app.listen(9000); 
module.exports = app; 

注意:要測試瀏覽器同步與此示例項目,我更新/public文件夾中的style.css文件