Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.10.2017, 23:26
Интересующийся
Отправить личное сообщение для mcmega Посмотреть профиль Найти все сообщения от mcmega
 
Регистрация: 23.02.2017
Сообщений: 12

Webpack - сжатие файлов json
Привет всем!
Не могу настроить webpack. Он почему то не сжимает файлы json, хотя css и js создает без проблем.

Вот мой webpack.config.json:

const path = require('path');
const webpack = require('webpack');
const CleanWebpackPlugin = require('clean-webpack-plugin');
const CompressionPlugin = require("compression-webpack-plugin");
const ExtractTextPlugin = require("extract-text-webpack-plugin");
const PostCSSAssetsPlugin = require('postcss-assets-webpack-plugin');
const CopyWebpackPlugin = require('copy-webpack-plugin');

module.exports = function (env) {
    const outputPath = path.join(__dirname, '../back-end/data');
    const exports = {
        cache: true,
        entry: {main: './src/index'},
        output: {
            path: outputPath,
            filename: '[name].js',
            publicPath: '/'
        },
        plugins: [
            new CleanWebpackPlugin(path.join(outputPath, '*'), {root: path.join(__dirname, '..'), verbose: false}),
            new webpack.NoEmitOnErrorsPlugin(),
            new ExtractTextPlugin('style.css'),
            new PostCSSAssetsPlugin({
                test: /\.css$/,
                log: false,
                plugins: [
                    require('precss'),
                    require('autoprefixer')
                ],
            })
        ],
        module: {
            rules: [
                {
                    test: /\.js$/,
                    loader: 'babel-loader',
                    include: [path.resolve(__dirname, "src")],
                    exclude: /(node_modules|bower_components)/,
                    options: {cacheDirectory: path.resolve(__dirname, 'babel_cache/')}
                },
                {
                    test: /\.s?css$/,
                    use: ExtractTextPlugin.extract({
                        fallback: 'style-loader',
                        use: ['css-loader', 'sass-loader']
                    })
                },
                {
                    test: /\.json$/,
                    loader: 'json-loader'
                }
            ]
        }
    };
    const copyTargets = [ {from: 'src/static/', to: './'} ];
    exports.plugins.push(new CopyWebpackPlugin(copyTargets));
    if (env && env.compress) {
        exports.plugins.push(new CompressionPlugin({
            asset: "[path].gz[query]",
            algorithm: "gzip",
            test: /\.(js|css|json)$/,
            threshold: 8192,
            minRatio: 0.8,
            deleteOriginalAssets: true
        }));
    }
    return exports;
};

Я в конце копирую из папки src/static/ в выходную папку ../back-end/data. И в выходной папке ../back-end/data/dl/ хочу сжать все файлы json (там только json)
Помогите разобраться, что не так.

Последний раз редактировалось mcmega, 31.10.2017 в 23:30.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сравнение двух json файлов t0rick Элементы интерфейса 2 23.11.2016 10:54
собрать из json Html Валерий1996 AJAX и COMET 1 15.06.2015 08:41
Не могу распарсить JSON. gorenie jQuery 3 29.11.2013 22:26
JSON или JSONP для запросов на другой сервер? Метод GET, для длинных сообщений? Kotakota jQuery 5 23.08.2011 23:12
jQuery. Обработка ошибок и JSON. mma_mma jQuery 3 19.07.2010 12:10