Webpack Server не собирает .js

264
10 апреля 2017, 06:58

Webpack-dev-server 2.4.2 не собирает .js (в моем случае это bundle.js). При запуске все выводит в терминал без ошибок, пишет "successful", но результата нет - выводит неизменённый bundle.js
Запрашивая команду webpack, без локального запуска, все отрабатывает без ошибок, сборка происходит. Не оставайтесь равнодушными к этому вопросу, на просторах сети эта проблема встречается нередко.

const ExtractTextPlugin = require('extract-text-webpack-plugin'); 
var path = require('path'); 
 
module.exports = { 
    entry: './src/app.js', 
    output: { 
        filename: 'bundle.js', 
        path: path.resolve(__dirname), 
        publicPath: path.resolve(__dirname, './static') 
        // path: __dirname + '/bundle' 
    }, 
    module: { 
        rules: [ 
            { 
                test: /\.js$/, 
                exclude: [/node_modules/], 
                use: [{ 
                    loader: 'babel-loader', 
                    options: { presets: ['es2015'] } 
                }] 
            }, 
            { 
                test: /\.css$/, 
                use: ExtractTextPlugin.extract({ 
                    fallback: 'style-loader', 
                    use: 'css-loader' 
                }) 
            } 
        ] 
    }, 
    plugins: [ 
        new ExtractTextPlugin('styles.css') 
    ] 
}

Answer 1

webpack-dev-server имеет зависимость, поскольку bundle.js файл кэшируется и не может обновляться. Проблема решилась установкой плагина html-webpack-plugin со следующими настройками кэша;

plugins: [ 
        new ExtractTextPlugin('styles.css'), new HtmlWebpackPlugin({ 
            title: 'My App', 
            filename: 'index.html', 
            minify: { 
                collapseWhitespace: true 
            }, 
            hash: true 
        }) 
    ]

new ExtractTextPlugin('styles.css') относиться к другому плагину. После установки и настройки сначала запустите webpack, только потом webpack-dev-server

READ ALSO
Как правильно расширить класс?

Как правильно расширить класс?

Пытаюсь расширить класс Array при помощи prototype, добавив в него свой метод, но при обходе массива циклом созданный метод видится элементом массива:

235
Первые шаги в typescript

Первые шаги в typescript

В коде я часто использую функцию как объект, то есть:

225
Ошибка кросдоменного POST запроса на angularjs

Ошибка кросдоменного POST запроса на angularjs

Отправляем запрос таким кодом:

227