当前位置: 首页 > news >正文

webpack 原理及使用

【点赞收藏加关注,前端技术不迷路~】

一、webpack基础

1.核心概念

1)entry:定义入口,webpack构建的第一步

module.exports ={entry:'./src/xxx.js'
}

2)output:出口(输出)

3)loader:模块加载器,用户将模块的原内容按照需求加载成新内容

        比如文本加载器raw-loader(安装:npm add raw-loader -d;)

在webpack中,引用 .js文件、.json文件时不需要定义加载器,是webpack内置功能。因为webpack就是为了cjs结构来打包的。因为支持cjs,所以只支持js,json。除这两种文件,webpack不知道如何加载,需要指定加载器:webpack.config.js

module: {rules: [{ test: /\.txt$/, use:'raw-loader' }]// 指定.txt文件使用文本加载器raw-loader来打包
}

4)plugin:插件

        扩展插件,在webpack构建过程的特定时机注入扩展逻辑,用来改变或优化构建结果

        比如html出口打包插件html-webpack-plugin(安装:npm add html-webpack-plugin -d;)

        使用插件需要引入:const HtmlWebpackPlugin = require('html-webpack-plugin');

plugins: [new HtmlWebpackPlugin({ template: "./src/index.html" });
],

        将src/index.html作为dist/index.html输出文件的模板,并将打包的main.js以延迟加载defer的方式引入html;

5)mode:打包环境,通过选择development、production或none之中的一种,来设置mode参数

        mode可以启用webpack内置的,在相应环境下的优化,默认值是production。

6)DevServer:开发服务器

        提供了一个基本的web server,并具有live reloading(实时重新加载)功能;

                1.静态服务比如:图片

http://www.dtcms.com/a/304747.html

相关文章:

  • 纸板制造胶工艺学习1
  • FlinkCDC实现多数据源数据集的增量更新实战
  • 磁悬浮转子同频振动:自适应陷波器设计与稳定性深度解析(附MATLAB代码)
  • 8.项目起步(2)
  • 本土化DevOps实践新篇章:Gitee引领企业高效协作新时代
  • 自学嵌入式 day37 HTML
  • Go 客户端玩转 ES|QL API 直连与 Mapping Helpers 实战详解
  • 做副业,要事不过三
  • CentOS 7部署Redis
  • 如何理解js中的副作用
  • 沪铝本周想法
  • docker docker与swarm入门笔记
  • 云原生周刊:2025年的服务网格
  • 【Linux基础知识系列】第七十篇 - 了解swap分区的概念
  • 【Linux篇】补充:消息队列和systemV信号量
  • 【图像噪点消除】——图像预处理(OpenCV)
  • 以太坊十年:智能合约与去中心化的崛起
  • 第5课 sort函数
  • Couchbase 详解
  • HBase 详解
  • 使用jQuery时的注意事项
  • Java 大视界 -- Java 大数据机器学习模型在金融信用评级模型优化与信用风险动态管理中的应用(371)
  • 每日学习笔记记录(分享更新版-凌乱)
  • 亚马逊欧洲站流量破局:多维策略重构与运营效能升级
  • 社区版 2025.7 | CQ-Mate V1.3发布啦!
  • python线性回归:从原理到实战应用
  • 广告投放平台:从痛点解决到高效管理的全解析
  • 数据库02 网页html01 day44
  • 浅析MCP (1)+ 【小智 AI 机器人MCP案例分析】
  • Python的垃圾回收机制