mirror of
https://github.com/fooflington/selfdefined.git
synced 2025-06-13 14:05:27 +00:00
update
This commit is contained in:
84
node_modules/bs-recipes/recipes/webpack.babel/readme.md
generated
vendored
Normal file
84
node_modules/bs-recipes/recipes/webpack.babel/readme.md
generated
vendored
Normal file
@ -0,0 +1,84 @@
|
||||
#Browsersync - Webpack + Babel
|
||||
|
||||
## Installation/Usage:
|
||||
|
||||
To try this example, follow these 4 simple steps.
|
||||
|
||||
**Step 1**: Clone this entire repo
|
||||
```bash
|
||||
$ git clone https://github.com/Browsersync/recipes.git bs-recipes
|
||||
```
|
||||
|
||||
**Step 2**: Move into the directory containing this example
|
||||
```bash
|
||||
$ cd bs-recipes/recipes/webpack.babel
|
||||
```
|
||||
|
||||
**Step 3**: Install dependencies
|
||||
```bash
|
||||
$ npm install
|
||||
```
|
||||
|
||||
**Step 4**: Run the example
|
||||
```bash
|
||||
$ npm start
|
||||
```
|
||||
|
||||
### Additional Info:
|
||||
|
||||
Edit any files within the `src` folder
|
||||
|
||||
|
||||
### Preview of `app.js`:
|
||||
```js
|
||||
/**
|
||||
* 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 stripAnsi = require('strip-ansi');
|
||||
|
||||
/**
|
||||
* Require ./webpack.config.js and make a bundler from it
|
||||
*/
|
||||
var webpackConfig = require('./webpack.config');
|
||||
var bundler = webpack(webpackConfig);
|
||||
|
||||
/**
|
||||
* Reload all devices when bundle is complete
|
||||
* or send a fullscreen error message to the browser instead
|
||||
*/
|
||||
bundler.plugin('done', function (stats) {
|
||||
if (stats.hasErrors() || stats.hasWarnings()) {
|
||||
return browserSync.sockets.emit('fullscreen:message', {
|
||||
title: "Webpack Error:",
|
||||
body: stripAnsi(stats.toString()),
|
||||
timeout: 100000
|
||||
});
|
||||
}
|
||||
browserSync.reload();
|
||||
});
|
||||
|
||||
/**
|
||||
* Run Browsersync and use middleware for Hot Module Replacement
|
||||
*/
|
||||
browserSync.init({
|
||||
server: 'app',
|
||||
open: false,
|
||||
logFileChanges: false,
|
||||
middleware: [
|
||||
webpackDevMiddleware(bundler, {
|
||||
publicPath: webpackConfig.output.publicPath,
|
||||
stats: {colors: true}
|
||||
})
|
||||
],
|
||||
plugins: ['bs-fullscreen-message'],
|
||||
files: [
|
||||
'app/css/*.css',
|
||||
'app/*.html'
|
||||
]
|
||||
});
|
||||
|
||||
```
|
||||
|
Reference in New Issue
Block a user