Добрый день!
У меня есть проект на ts + react. Собираю его с помощью webpack
Вот так выглядит конфиг:
const path = require('path');
const HTMLWebpackPlugin = require('html-webpack-plugin');
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const TerserPlugin = require("terser-webpack-plugin");
const app = {
mode: "production",
entry: "./src/start.jsx",
optimization: {
minimize: true,
minimizer: [
new TerserPlugin({
terserOptions: {
mangle: true,
keep_classnames: true,
},
}),
]
},
output: {
filename: (pathData) => {
const date = new Date().toJSON().slice(0,10);
var seconds = new Date().getTime() / 10000;
return date + '.' + Math.round(seconds) + '.app.js';
},
path: path.resolve(__dirname, 'dist'),
},
optimization: {
minimize: false,
},
plugins: [
new HTMLWebpackPlugin({
template: './src/index.html'
}),
new CleanWebpackPlugin(),
new MiniCssExtractPlugin({
filename: (pathData) => {
const date = new Date().toJSON().slice(0,10);
var seconds = new Date().getTime() / 10000;
return date + '.' + Math.round(seconds) + '.app.css';
},
}),
],
resolve: {
alias: {
'@': path.join(__dirname, './src/'),
},
extensions: ['.jsx', '.tsx', '.ts', '.d.ts', '.js', '.css'],
},
module: {
rules: [
{
test: /\.(js|jsx|tsx|ts)$/,
exclude: /node_modules/,
loader: 'babel-loader'
},
{
test: /\.css$/i,
use: [MiniCssExtractPlugin.loader, "css-loader"],
},
],
},
}
module.exports = [app]
Я ожидаю что в бандле будут переименованы хотя бы локальные переменные, чтобы как-то защитить код. Вообщем ожидаю какой-то minimize. Но на выходе никакого minimize нету.
В чем может быть проблема?
p.s. по ощущениям mode: 'production' в конфиге не на что не повлиял.