You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.2 KiB
42 lines
1.2 KiB
/** |
|
* Require Browsersync along with webpack and middleware for it |
|
*/ |
|
var browserSync = require('browser-sync').create(); |
|
var webpack = require('webpack'); |
|
var webpackDevMiddleware = require('webpack-dev-middleware'); |
|
var webpackHotMiddleware = require('webpack-hot-middleware'); |
|
|
|
/** |
|
* Require ./webpack.config.js and make a bundler from it |
|
*/ |
|
var webpackConfig = require('./webpack.config.dev'); |
|
var bundler = webpack(webpackConfig); |
|
|
|
/** |
|
* |
|
*/ |
|
browserSync.init({ |
|
server: 'app', |
|
middleware: [ |
|
webpackDevMiddleware(bundler, { |
|
// IMPORTANT: dev middleware can't access config, so we should |
|
// provide publicPath by ourselves |
|
publicPath: webpackConfig.output.publicPath, |
|
|
|
// pretty colored output |
|
stats: {colors: true} |
|
|
|
// for other settings see |
|
// http://webpack.github.io/docs/webpack-dev-middleware.html |
|
}), |
|
|
|
// bundler should be the same as above |
|
webpackHotMiddleware(bundler) |
|
], |
|
// no need to watch '*.js' here, webpack will take care of it for us, |
|
// including full page reloads if HMR won't work |
|
files: [ |
|
'app/css/*.css', |
|
'app/*.html' |
|
] |
|
});
|
|
|