html-webpack-plugin вставляет js только в корневой маршрут?

Используя Html-webpack-plugin, если я иду в корневой каталог localhost:8080, он вводит javascript, как и ожидалось.

сервер.js

app.use('/', express.static(__dirname + '/dist'));

app.get('*', (req, res)=> {
    res.sendFile(__dirname + '/dist/index.html');
});

webpack.config.js

entry: [
        "webpack-hot-middleware/client?reload=true",
        "babel-polyfill",
        path.resolve(__dirname, './config/app/app.js')
    ],
    output: {
        path: path.resolve(__dirname, './dist'),
        filename: 'app.min.js',
        publicPath: '/'
    },
    plugins: isDeveloping ? [
        new HtmlWebpackPlugin({
            hash: true,
            filename: 'index.html',
            template: __dirname + '/dist/index.html',
            inject: 'body'
        })

Я нашел аналогичный вопрос, и их решение состояло в том, чтобы настроить output.publicPath = '/', что я и сделал, но все равно не повезло. Я просто получаю шаблон без внедрения JS


person Paul Brunache    schedule 04.08.2017    source источник


Ответы (1)


Оказывается, я запускал webpack-dev-server, и он не внедрялся в файловую систему. Я добавил этот фрагмент в свой веб-пакет, и проблема решена

"scripts": {
    "start": "npm run build",
    "build": "webpack -p && webpack-dev-server"
  },
person Paul Brunache    schedule 06.08.2017