fe-boilerplate/webpack.config.js

60 lines
1.3 KiB
JavaScript
Raw Permalink Normal View History

2016-02-26 16:39:48 +01:00
var path = require('path');
var webpack = require('webpack');
const ExtractCssChunks = require('extract-css-chunks-webpack-plugin');
// const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
2016-02-26 16:39:48 +01:00
module.exports = {
devtool: 'inline-source-map',
mode: 'development',
// mode: 'production',
2016-02-26 16:39:48 +01:00
entry: [
'webpack-dev-server/client?http://localhost:3000',
'./src/index'
],
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
publicPath: '/static/'
},
resolve: {
2019-12-28 21:00:27 +01:00
extensions: ['.js', '.ts', '.tsx'],
alias: { mobx: __dirname + "/node_modules/mobx/lib/mobx.es6.js" }
2016-02-26 16:39:48 +01:00
},
plugins: [
new ExtractCssChunks({
filename: '[name].css',
chunkFilename: '[id].css',
})
],
2016-02-26 16:39:48 +01:00
module: {
rules: [{
2016-02-26 16:39:48 +01:00
test: /\.tsx?$/,
2019-12-28 21:00:27 +01:00
loader: "ts-loader",
2016-02-26 16:39:48 +01:00
include: path.join(__dirname, 'src')
},
{
test: /\.less$/,
use: [
{
loader: ExtractCssChunks.loader
},
{
loader: 'css-loader'
},
{
loader: 'less-loader',
options: {
javascriptEnabled: true
},
},
],
},
{
test: /\.css$/i,
use: [ExtractCssChunks.loader, 'css-loader'],
},
]
2016-02-26 16:39:48 +01:00
}
};