webpack.config.js
Home
/
FileServer /
SPA /
webpack.config.js
//Утилита path используется для корретного полного пути к проекту
const path = require('path');
module.exports = {
//Генерация карты. Более подробная информация при отладке ошибок
devtool: 'source-map',
//Точка входа (index.js)
entry: {
app: "./src/index.js"
},
//Сборка
output: {
//Имя сборки
//[name] - название точки входа (app__bundle.js)
filename: "[name]_bundle.js",
//Физическое размещение
path: path.resolve(__dirname, "./build"),
//Путь на dev сервере
publicPath: "/build"
},
//Дополнительная обработка файлов в процессе сборки
module: {
//Правила обработки
rules: [
//Обработка js
{
//Фильтр файлов. Регулярка. По расширению
test: /\.js$/,
//Тип обработки (из пакета)
loader: 'babel-loader',
//Искллючить из обработки файлы из папки node_modules (т.к. они уже скомпилированы)
exclude: '/node_modules/'
},
//Обработка jsx
{
// определяем тип файлов
test: /\.jsx?$/,
exclude: /(node_modules)/,
// определяем загрузчик
loader: "babel-loader"
}
]
},
//Парамтеры dev сервера
devServer: {
//Выводить ошибки в браузер
overlay: true,
//Начальная страница
openPage: 'build/index.html',
//SPA route. Возвращать index если файл маршрута не найден
historyApiFallback: {
index: 'index.html'
},
proxy: {
//historyApiFallback: true,
//Адрес WevAPI
'/api/*': {
target: 'http://localhost:47780'
}
}
}
}