diff --git a/examples/admin/src/middleware/hot.js b/examples/admin/src/middleware/hot.js deleted file mode 100644 index 29e950b..0000000 --- a/examples/admin/src/middleware/hot.js +++ /dev/null @@ -1,5 +0,0 @@ -export default acceptFn => session => { - if (process.env.TUX_BUILD_TARGET !== 'server' && module.hot) { - acceptFn(() => session.refresh()) - } -} diff --git a/shared/gulpfile.js b/shared/gulpfile.js index 93c24d5..9cf8069 100644 --- a/shared/gulpfile.js +++ b/shared/gulpfile.js @@ -31,11 +31,6 @@ const babel = target => 'react', ['es2015', { modules: target === 'es2015' ? false : 'commonjs' }], ], - env: { - development: { - plugins: [require.resolve('react-hot-loader/babel')], - }, - }, }).on('error', function(error) { // only log babel errors once. if (target === 'es2015') { diff --git a/utilities/neutrino-preset-tux/package.json b/utilities/neutrino-preset-tux/package.json index bc8fc34..98c5d25 100644 --- a/utilities/neutrino-preset-tux/package.json +++ b/utilities/neutrino-preset-tux/package.json @@ -21,6 +21,7 @@ "neutrino-middleware-banner": "^6.1.5", "neutrino-middleware-compile-loader": "^6.1.5", "neutrino-middleware-env": "^6.1.5", + "neutrino-middleware-hot": "^6.1.5", "neutrino-preset-react": "6.1.5", "react-dev-utils": "~4.0.1", "react-error-overlay": "~2.0.1", diff --git a/utilities/neutrino-preset-tux/src/index.ts b/utilities/neutrino-preset-tux/src/index.ts index 03271f1..24ebe75 100644 --- a/utilities/neutrino-preset-tux/src/index.ts +++ b/utilities/neutrino-preset-tux/src/index.ts @@ -1,6 +1,7 @@ import { Neutrino } from 'neutrino' import merge from 'deepmerge' import react from 'neutrino-preset-react' +import hot from 'neutrino-middleware-hot' import { env, ssr, @@ -46,7 +47,12 @@ export default (neutrino: Neutrino, opts: Partial = {}) => { : neutrino.options.browserEntry // Build on top of the offical react preset (overriding open functionality). - neutrino.use(react, merge(options, { devServer: { open: false } })) + // Skip react-hot-loader for now while enabling other HMR functionality. + neutrino.use( + react, + merge(options, { devServer: { open: false }, hot: false }) + ) + neutrino.use(hot) // Switch to custom html plugin. neutrino.use(html, options.html)