litser
/
webpack.config.js
70 строк · 1.7 Кб
1'use strict'
2
3const path = require('path')4const MiniCssExtractPlugin = require('mini-css-extract-plugin')5
6const PATHS = {7src: path.join(__dirname, './src'),8build: path.join(__dirname, '/dist')9}
10
11const mode = process.env.NODE_ENV || 'node'12const target = process.env.NODE_ENV === 'production' ? 'browserslist' : 'web'13
14module.exports = {15entry: [16// `${PATHS.src}/dev/api.dev.js`,17`${PATHS.src}/styles/index.scss`18],19output: {20path: path.join(__dirname, './dist/public/static'),21filename: 'script.bundle.js'22},23devtool: 'source-map',24mode,25target,26node: {27global: true,28__filename: true,29__dirname: true30},31module: {32rules: [33{34test: /\.js$/,35exclude: /(node_modules|bower_components)/,36use: {37loader: 'babel-loader'38}39},40{41test: /\.(s[ac]|c)ss$/i,42use: [43MiniCssExtractPlugin.loader,44{45loader: 'css-loader',46options: {47importLoaders: 1,48sourceMap: true49}50},51'sass-loader'52]53}54]55},56resolve: {57modules: ['node_modules'],58extensions: ['.js', '.scss'],59fallback: {60fs: false,61os: false,62path: false63}64},65plugins: [66new MiniCssExtractPlugin({67filename: 'style.bundle.css'68})69]70}
71