5、uglifyjs-webpack-plugin压缩js

注意:虽然uglifyjs是插件,但是webpack版本里默认已经集成,不需要再次安装

目录

webpack.config.js配置文件

复制代码
// node中的引入路径模块
const path = require('path');
// 引入webpack
const webpack = require('webpack');
// 压缩js
const uglify = require('uglifyjs-webpack-plugin');
module.exports = {
    //入口文件的配置项
    entry: {
        entry: './src/entry.js'
    },
    //出口文件的配置项
    output: {
        //输出的路径,用了Node语法
        path: path.resolve(__dirname, 'dist'),
        //输出的文件名称
        filename: 'bundle.js'
    },
    //模块:例如解读CSS,图片如何转换,压缩
    module: {
        rules: [{
            // 用于匹配处理文件的扩展名的表达式,这个选项是必须进行配置的;
            test: /\.css$/,
            //   loader名称,就是你要使用模块的名称,这个选项也必须进行配置,否则报错;
            use: ['style-loader', 'css-loader']
            //   include/exclude:手动添加必须处理的文件(文件夹)或屏蔽不需要处理的文件(文件夹)(可选)
            // query:为loaders提供额外的设置选项(可选)
        }]
    },
    //插件,用于生产模版和各项功能 压缩 后 不能热更新!!!
    plugins: [
        new uglify()
    ],
    //配置webpack开发服务功能
    devServer: {
        //设置基本目录结构
        contentBase: path.resolve(__dirname, 'dist'),
        //服务器的IP地址,可以使用IP也可以使用localhost
        host: 'localhost',
        //服务端压缩是否开启
        compress: true,
        //配置服务端口号
        port: 9097
    }
}
复制代码

 

package.js依赖项

复制代码
{
  "name": "xz",
  "version": "1.0.0",
  "description": "",
  "main": "webpack.config.js",
  "scripts": {
    "start": "webpack-dev-server"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "css-loader": "^0.28.7",
    "style-loader": "^0.19.0",
    "webpack": "^3.8.1",
    "webpack-dev-server": "^2.9.3"
  }
}
复制代码

打包命令

npm start 开发环境 webpack 生产环境

 

posted @   xuanPhoto  阅读(445)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示