404 bundle.js не найден - Использование webpack-hot-middleware - PullRequest
0 голосов
/ 25 марта 2019

Я просмотрел все подобные посты (их много), но все безрезультатно.

У меня есть экспресс-приложение, созданное с использованием Keystone CMS.Я пытаюсь интегрировать реагирующий интерфейс.Я могу успешно получить веб-пакет для создания своего jsx-файла, и все работает хорошо, пока я не начну пытаться связать функциональность «Горячая загрузка модуля».

Я подражал проекту 'ultimate-hot-reloading-example'в меру своих способностей (что работает ОТЛИЧНО).Я получаю успешную сборку и не вижу ошибок в консоли, но я получаю ошибку 404 при загрузке страницы при загрузке файла bundle.js.

Я перепробовал все, что мог придумать.

Что я делаю не так?

webpack.config:

const config = {
  mode: process.env.NODE_ENV,
  devtool: '#eval-source-map',
entry: [
  'webpack-hot-middleware/client',
  './client/index.jsx'
],
output: {
  path: path.join(__dirname, '/public/js'),
  filename: 'bundle.js',
  publicPath: './public/js/'
},
 plugins: [
  new webpack.optimize.OccurrenceOrderPlugin(),
  new webpack.HotModuleReplacementPlugin(),
  new webpack.NoEmitOnErrorsPlugin()
],
resolve: {
  extensions: ['.js'],
  alias: {
    request: 'browser-request'
  }
},
module: {
  rules: [
    // Javascript
    {
      test: /\.jsx$/,
      loader: 'babel-loader',
      include: path.join(__dirname, 'client'),
      query: {
        "env": {
        "development": {
          "plugins": ["react-hot-loader/babel"],
        }
       },
     }
   }

  ]
 }
};

keystone.js (файл сервера)

var app = keystone.express();
app.use(
    webpackDevMiddleware(compiler, {
      noInfo: true,
      publicPath: webpackConfig.output.publicPath
    })
  );

app.use(webpackHotMiddleware(compiler));

Моя единственная оставленная мысль - я как-то не даю правильный публичный путь.Тем не менее, я попробовал все варианты здесь, которые приходили на ум ... Помощь очень ценится.

...