123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- var CompressionPlugin = require('compression-webpack-plugin');
- const TerserPlugin = require('terser-webpack-plugin');
- module.exports = {
- publicPath: process.env.NODE_ENV === 'production'
- ? '/'
- : '/',
- outputDir: 'dist',
- lintOnSave: false,
- devServer: {
-
- hot: true,
- disableHostCheck: true,
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- },
- productionSourceMap: false,
- configureWebpack: {
- plugins: [
- new CompressionPlugin({
- algorithm: 'gzip',
- test: /\.js$|\.css$/,
- filename: '[path][base].gz',
- minRatio: 1,
- threshold: 10240,
- deleteOriginalAssets: false,
- }),
- ],
- optimization: {
-
- minimizer: [
- new TerserPlugin({
- terserOptions: {
- ecma: undefined,
- warnings: false,
- parse: {},
- compress: {
- drop_console: true,
- drop_debugger: true,
- pure_funcs: ['console.log']
- }
- },
- }),
- ]
- }
- },
- css: {
- loaderOptions: {
- postcss: {
- plugins: [
- require('postcss-px-to-viewport')({
- unitToConvert: 'px',
- viewportWidth: 1920,
- unitPrecision: 5,
-
- propList: ['*'],
- viewportUnit: 'vw',
- fontViewportUnit: 'vw',
-
- selectorBlackList: [],
- minPixelValue: 1,
- mediaQuery: false,
- replace: true,
-
- exclude: [],
- landscape: false,
- landscapeUnit: 'vw',
- landscapeWidth: 1334
- })
- ]
- }
- }
- }
- }
|