Я использую веб-пакет для создания страницы.В конфигурационном файле у меня есть before(app){}
часть для запуска сервера в режиме разработки.
Хотелось бы узнать, как создать отдельный файл app.js
для их загрузки и запуска на сервере?В примере я отметил код между строками комментариев.
Есть ли какой-либо плагин для получения кода из before(app)
и сохранения в файл?
const webpack = require('webpack');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const CleanWebpackPlugin = require('clean-webpack-plugin');
module.exports = (x, env) => {
return {
entry: './src/index.js',
module: {
rules: [
{
test: /\.(js|jsx)$/,
exclude: /node_modules/,
use: ['babel-loader']
},
{
test: /\.css$/,
use: [
{
loader: MiniCssExtractPlugin.loader,
options: {
publicPath: '../',
hmr: env.mode === 'development',
},
},
'css-loader',
]
},
{
test: /\.(png|woff|woff2|eot|ttf|svg)$/,
loader: 'url-loader'
}
]
},
resolve: {
extensions: ['*','.js', '.jsx', '.css']
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new HtmlWebpackPlugin({
//inject: "body",
template: 'src/index.ejs'
}),
new MiniCssExtractPlugin(),
new CleanWebpackPlugin()
],
devServer: {
contentBase: './dist',
hot: true,
port: 3000,
disableHostCheck: true,
historyApiFallback: true,
before(app) {
////////////////////////////////////////////////////////////////////////////////
var bodyParser = require('body-parser');
var io = require('socket.io')();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
io.on('connection', function(client){
client.on('message',function(){
client.emit('data', 'text');
});
});
});
app.post('/', function(req, res){
res.send('text');
});
io.listen(6789);
////////////////////////////////////////////////////////////////////////////////
},
}
}
};