简述webpack

概念:前端项目工程化的具体解决方案

功能:代码压缩混淆、处理浏览器端Javascript 兼容性、性能优化

webpack构建
1、新建空目录,npm init -y 初始化包管理配置文件package.json

2、新建s r c源码目录

3、新建 src -> index.html首页 index.js 脚本文件

4、初始化首页基本结构

5、模块导入
① -S || --save 将引入的包记录到dependencies下。 dependencies -> 依赖关系 项目开发阶段需要使用上线部署也需要
② -D || --save-dev 将包引入到目录 devDependencies -> 开发依赖。 项目开发阶段需要使用,上线部署后不需要

webpack基本使用
1、导入npm install webpack@5.42.1 web pack-cli@4.7.2 -D

2、插件使用-配置loader加载文件
① Webpack-dev-server 自动构建插件
npm install html-webpack-plugin@5.3.2 -D
② 打包处理c s s文件

{ test: /\.css$/, use: ['style-loader', 'css-loader'] } ```
③ 打包处理less文件
``` npm i less-loader@10.0.1 less@4.1.1 -D
{ test: /\.less$/, use: ['style-loader', 'css-loader', 'less-loader']} ```
④ 配置图片加载loader
``` npm i url-loader@4.1.1 file-loader@6.2.0 -D
{ test: /\.jpg|.png|.gif$/, use: 'url-loader?limit=2999' }  // 只有<=limit大小的才会被转base64存储 ``` 
⑤ JavaScript高级语法需要借助babel-loader打包处理
``` npm i babel-loader@8.2.2 @babel/core@7.14.6 @babel/plugin-proposal-decorators@7.14.5 -D
// exclude指定排除项, 目录下的第三方包不需要被打包
{ test: /\.js$/, use: 'babel-loader', exclude: /node-modules/ } ```
⑥  解析装饰器的语法, 创建babel.config.js文件,设置babel配置
``` module.exports = {
    "plugins": [
      ["@babel/plugin-proposal-decorators", { "legacy": true }],
    ]
  } ```
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • webpack是一个加载器兼打包工具,它能把各种资源作为模块来使用和处理。 一、文件环境 首先,我们新建一个web...
    补刀流阅读 1,015评论 1 0
  • 前言 本文主要从webpack4.x入手,会对平时常用的Webpack配置一一讲解,各个功能点都有对应的详细例子,...
    BetterChen阅读 1,957评论 0 3
  • 前言 本文主要从webpack4.x入手,会对平时常用的Webpack配置一一讲解,各个功能点都有对应的详细例子,...
    kingsley2036阅读 744评论 0 2
  • 1.高效的开发离不开基础工程的搭建。2.近几年来,前端的工作早已不再是切图那么简单,项目比较大时,可能会多人协同开...
    NoNothing阅读 534评论 0 0
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,098评论 0 4