bundle.js не найден [Webpack] - PullRequest
0 голосов
/ 09 июня 2018

[UPDATE] bundle.js фактически был создан в памяти.Лучший способ - это сохранить index.html и bundle.js (настроенные в webpack.config.js) в одном каталоге, чтобы избежать каких-либо проблем.

Я пытался отобразить простой HTML-файл с помощью веб-пакета, ноне могу понять, почему я получаю 404. Я понимаю, что bundle.js не может быть найден, поэтому я пробовал разные пути, но это не сработало, есть идеи?

Буду признателен за вашу помощь.Спасибо.

app.js

var express = require('express')
var path = require('path')

const app = express();

app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'html')

app.get('/', function (req, res) {
    res.render('index')
  })

app.listen(3000, () => console.log('Example app listening on port 3000!'))

webpack.config.js

module.exports = {
  entry: ['./src/index.js'],
  output: {
    path: __dirname,
    publicPath: '/',
    filename: 'bundle.js'
  },
[...]

index.html

<!DOCTYPE html>
<html>
  [...]
  <body>
      <div class="container"></div>
  </body>
  <script src="./bundle.js"></script>
</html>

Структура папок

enter image description here

1 Ответ

0 голосов
/ 09 июня 2018

Вы не указали правильный путь к вашему index файлу.Если он у вас есть на src directory, код будет выглядеть так:

entry: [
    path.resolve(__dirname, 'src/index')
  ],
[...]

В противном случае, если он у вас на views directory, них, код будет следующим:

 entry: [
        path.resolve(__dirname, 'views/index')
      ],
    [...]

И в вашем html-файле есть <script src="/bundle.js"></script>


ОБНОВЛЕНИЕ

Основываясь на своем коде в github, попробуйте изменить следующие строки

entry: [
    path.resolve(__dirname, 'src/index')
  ],
  devServer: {
    contentBase: path.resolve(__dirname, 'src')
  },
    output: {
    path: __dirname + '/dist', // Note: Physical files are only output by the production build task `npm run build`.
    publicPath: '/',
    filename: 'bundle.js'
  },

Проблема заключается в том, что вы пропускаете path.resolve(...) как в entry point, так и в devServer, в частности

Надежда помогает:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...