From 251c85c93d3ce75d72cc3c0839837caf29d6d363 Mon Sep 17 00:00:00 2001 From: Dan Abramov Date: Mon, 18 Apr 2016 13:28:16 +0100 Subject: [PATCH] Update Counter example to React Hot Loader 3 --- examples/counter/.babelrc | 3 ++- examples/counter/package.json | 8 ++++---- examples/counter/src/index.js | 18 +++++++++++++++++- examples/counter/webpack.config.js | 5 +++-- 4 files changed, 26 insertions(+), 8 deletions(-) diff --git a/examples/counter/.babelrc b/examples/counter/.babelrc index 65836a67..b807015e 100644 --- a/examples/counter/.babelrc +++ b/examples/counter/.babelrc @@ -1,3 +1,4 @@ { - "presets": ["es2015-loose", "stage-0", "react"] + "presets": ["es2015-loose", "stage-0", "react"], + "plugins": ["react-hot-loader/babel"] } diff --git a/examples/counter/package.json b/examples/counter/package.json index 38bd610f..f1451c7d 100644 --- a/examples/counter/package.json +++ b/examples/counter/package.json @@ -16,8 +16,8 @@ }, "homepage": "https://github.com/gaearon/redux-devtools#readme", "dependencies": { - "react": "^0.14.6", - "react-dom": "^0.14.6", + "react": "^15.0.1", + "react-dom": "^15.0.1", "react-redux": "^4.1.0", "redux": "^3.1.1", "redux-thunk": "^1.0.3" @@ -30,10 +30,10 @@ "babel-preset-react": "6.3.13", "babel-preset-stage-0": "^6.3.13", "node-libs-browser": "^0.5.2", - "react-hot-loader": "^1.3.0", + "react-hot-loader": "^3.0.0-alpha.8", "redux-devtools": "^3.0.1", - "redux-devtools-log-monitor": "^1.0.2", "redux-devtools-dock-monitor": "^1.0.1", + "redux-devtools-log-monitor": "^1.0.2", "webpack": "^1.9.11", "webpack-dev-server": "^1.9.0" } diff --git a/examples/counter/src/index.js b/examples/counter/src/index.js index 219a4f00..4b9ab864 100644 --- a/examples/counter/src/index.js +++ b/examples/counter/src/index.js @@ -1,11 +1,27 @@ import React from 'react'; import { render } from 'react-dom'; +import { AppContainer } from 'react-hot-loader'; import configureStore from './store/configureStore'; import Root from './containers/Root'; const store = configureStore(); render( - , + , document.getElementById('root') ); + +if (module.hot) { + module.hot.accept('./containers/Root', () => { + render( + , + document.getElementById('root') + ); + }); +} diff --git a/examples/counter/webpack.config.js b/examples/counter/webpack.config.js index 26886519..e362c5e4 100644 --- a/examples/counter/webpack.config.js +++ b/examples/counter/webpack.config.js @@ -6,6 +6,7 @@ module.exports = { entry: [ 'webpack-dev-server/client?http://localhost:3000', 'webpack/hot/only-dev-server', + 'react-hot-loader/patch', './src/index' ], output: { @@ -28,12 +29,12 @@ module.exports = { module: { loaders: [{ test: /\.js$/, - loaders: ['react-hot', 'babel'], + loaders: ['babel'], exclude: /node_modules/, include: path.join(__dirname, 'src') }, { test: /\.js$/, - loaders: ['react-hot', 'babel'], + loaders: ['babel'], include: path.join(__dirname, '..', '..', 'src') }] }