webpack5基础和开发模式配置

news2024/11/18 17:18:33

运行环境           nodejs16+

webpack基础

webpack打包输出的文件是bundle

打包就是编译组合

webpack本身功能

仅能编译js文件

开始使用

基本配置

五大核心概念

准备webpack配置文件

1.在根目录

2.命名为webpack.config.js

开发模式介绍

处理样式资源

处理css样式资源文件

因为webpack只能处理js文件

所以要想通过webpack打包css文件则需要在配置文件中引进load

查看官方文档永远是进步最快的方式

Loaders | webpack 中文文档 | webpack中文文档 | webpack中文网 (webpackjs.com)

webpack官方文档中查看load

1.要处理资源首先要创建资源并引入在入口文件

在src文件夹下创建css文件夹下创建css文件

查看文档

安装响应依赖

3.在load中写配置

在加载器模块中的rules数组中加load配置对象

 loader中use中数组的执行顺序:从右至左,从上到下

webpackload文档有个毛病,它有时没有安装让所有依赖

 处理less资源

创建less文件

入口文件引入

安装依赖

config 加载器配置更改

rules中load的配置

添加数组前的关键字为use可以添加多个loader,loader只能添加一个loader

处理Sass和Scss资源

安装依赖后

添加config加载器配置

sass和scss对应的都是sass文件,

只是两种命名,区别是里面的写法不太一样

sass文件命名可以省略括号和分号

处理Styl(一种预处理器)资源

 

创建文件

styl  更简洁

入口文件引入

样式资源打包流程

当webpack不识别资源时,通过load加载

样式资源而言,最常用的load是“style-loader”和“css-loader”

其他的预处理器资源 都需要借助loader将预处理器文件编译成css文件

处理图片资源

图片文档:直接搜索:asset

base64优化

修改打包资源的路径        希望不同的资源打包后去向不同的目录

输出的js文件放在dist下的一个js文件夹下

入口文件打包输出文件名         使js文件放在dist下的一个js文件夹下

filename:"static/js/main.js"

图片输出文件位置存放的设置方法在asset文档下

图片输出文件存放位置的设置在config中的图片配置设置中

hash:哈希值

ext:文件拓展名

query:其他参数      url中的查询参数

自动清空上次打包内容

处理字体图标资源

阿里巴巴字体图标库iconfont的使用

在素材库中选择需要的字体图标加入购物车

在购物车中选择添加至项目 并创建新项目

在新项目中选择下载至本地并进行解压

加压后打开demo-index.html(这个文件会显示字体图标的三个用法,兼容性最强是Unicode,使用用法最简单是Font class)

注意将css文件引入项目后,font字体文件也要引入项目

并且要将css文件中的font字体文件目录进行修改

webpack中字体图标的使用

改变字体图标文件的输出路径,则需要进行配置

type:“asset”会将小于某个大小的文件转化为base64字符串

字体图标文件不需要

处理其他资源

处理js资源

Eslint

vue语法的支持需要用到插件

配置文件(最重要)

具体配置过多,掌握基本的,需要查文档

指定语法环境

规则设置方式

规则文档 规则参考 - ESLint - 插件化的 JavaScript 代码检查工具

继承规则

使用eslint

plugin插件中

找到EslintWebpackPlugin模块

插件需要引用才能使用

1.官网查找安装下载插件配置写入

2.创建eslint配置文件

番外:vscode的插件          eslint

自动检测js文件是否符合规范

如果想要对一些文件取消这个插件的使用  创建.eslintignore 文件内写入文件夹名即可

Babel用法

在webpack中使用babel

官方文件

在webpack中文文档的loader中

babel-loader | webpack 中文文档 | webpack中文文档 | webpack中文网 (webpackjs.com)

webpack配置文件中load设置

预设可以写这里面,也可以写babel的配置文件中(易于修改)

配置文件写在webpack配置文件外面易于进行修改

处理html资源

使html文件能够自动引入js资源

官方文件

HtmlWebpackPlugin | webpack 中文文档 | webpack中文文档 | webpack中文网 (webpackjs.com)

下载

在webpack配置文件引入模块 

再将插件设置进行修改

自动化

目标:源代码修改后,打包文件自动改变

省去手动重新打包的步骤

下载包

配置

此时指令变为:npx webpack server

 

开发服务器:不会输出资源,在内存中编译打包

此时dist包下不会生成打包后的文件,但页面效果是存在的 

开发环境下配置总结

24-基础-总结开发模式配置_哔哩哔哩_bilibili

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1710523.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

攻防世界-bug题目详解

1.打开靶场,先注册一个用户,然后登录上,注册的时候发现用户名为admin的用户存在,于是注册的用户为admin123123 点击personal如图所示可以知道我注册的这个用户的uid是5,然后还有我注册时候的信息 使用burp抓包&#…

零基础小白本地部署大疆上云api(个人记录供参考)

文章目录 运行前准备前后端项目运行1.前端项目: 后端项目运行必须先依靠emqx运行必须先依靠redis运行修改后端项目的application.yml文件 运行前准备 1.保证电脑又node.js环境,可以正常使用npm 2.Java的jdk必须是11及以上版本否则无效 3.下载好emqx,red…

three.js 性能对比 babylon.js

babylon.js pbr 材质, 27帧 three.js pbr 材质, 26 帧 6172 个mesh.

小阿轩yx-Shell 编程之循环语句与函数

小阿轩yx-Shell 编程之循环语句与函数 for 循环语句 可以很好地解决顺序编写异常烦琐、困难重重的全部代码 (){}:里边写的都是命令 ):不能嵌套 $():可以嵌套,适合更…

使用Datav,echarts开发各种地图

一、功能描述 在实际中,有时候需要针对不同的地图进行开发,而能在网上找到现成,与需要匹配度高的,几乎很难,而且找起对应的资源也相对麻烦。所以结合DataV提供的地图数据,就能开发出各种地图,然…

机器学习-3-特征工程的重要性及常用特征选择方法

参考特征重要性:理解机器学习模型预测中的关键因素 参考[数据分析]特征选择的方法 1 特征重要性 特征重要性帮助我们理解哪些特征或变量对模型预测的影响最大。 特征重要性是数据科学中一个至关重要的概念,尤其是在建立预测性任务的模型时。想象你正在尝试预测明天是否会下…

2024年电子、电气与信息科学国际会议(EEIS 2024)

2024年电子、电气与信息科学国际会议(EEIS 2024) 2024 International Conference on Electronics, Electrical and Information Science 【重要信息】 大会地点:昆明 大会官网:http://www.iceeis.com 投稿邮箱:iceeis…

为什么要学习c++?

你可能在想,“C?那不是上个时代的产物吗?” 哎呀,可别小看了这位“老将”,它在21世纪的科技舞台上依旧光芒万丈,是许多尖端技术不可或缺的基石! 1. 无可替代 c源于c语言,它贴近于硬…

5月28(信息差)

🌍 胖东来“改造”永辉超市 细则公布 胖东来“改造”永辉超市 细则公布! 🎄在 Windows 下玩转多媒体处理框架 BMF https://juejin.cn/post/7371640570421755913 ✨四川:将人工智能作为一号创新工程,加快突破一批原…

提高联盟营销收入的秘密武器

联盟营销已经成为推广产品和服务的关键策略之一。通过利用社交媒体平台如Facebook、X(前Twitter)、Instagram和TikTok,联盟客能够触及广泛的潜在客户,展开高效的营销活动。 如今,联盟客手握多个账号来拓展自己的业务已…

SQL实战 将学生信息进行 行转列输出

表countries 数据如下: namecontinentJaneAmericaPascalEuropeXiAsiaJackAmerica数据建表来源: SQL试题使得每个学生 按照姓名的字⺟顺序依次排列 在对应的⼤洲下⾯展示为如下的数据样式: namecontinentJane, JackAmericaXiAsiaPascalPasca…

Vue 3指令与事件处理

title: Vue 3指令与事件处理 date: 2024/5/25 18:53:37 updated: 2024/5/25 18:53:37 categories: 前端开发 tags: Vue3基础指令详解事件处理高级事件实战案例最佳实践性能优化 第1章 Vue 3基础 1.1 Vue 3简介 Vue 3 是一个由尤雨溪(尤大)领导的开源…

airtest做web端UI自动化实战

安装 官网下载客户端 airtest库安装 pip install airtest pip install pocoui脚本录制 利用airtest客户端录制脚本 web端辅助插件-selenium windows打开: 设置chrome路径 开始调式录制 脚本运行 # -*- coding: utf-8 -*- """ Time : 2024/5/…

安装mysql的MGR集群

说明 1、 mysql数据库主从宕机,会影响到正常业务访问,并且要手动进行切换。 2、 MHA高可用搭建复杂,代码已停止更新。 3、 MGR集群搭建方便, master故障会自动进行切换,不影响业务正常访问。 一、环境准备 1、主机说明…

安全测试跟自动化测试,哪个方向发展好一些?

引言: 在当今高度互联的数字化时代,软件的安全性和质量成为企业和用户关注的焦点。安全测试和自动化测试作为软件测试领域的两个重要分支,为确保软件系统的稳定性和可靠性发挥着重要作用。本文将深入探讨安全测试和自动化测试的发展方向&…

shell中编写备份数据库脚本(使用mysqldump工具)

mysqldump备份 目录 mysqldump备份 分库备份 分表备份 利用自带工具mysqldump 实现数据库分库分表备份。 要想知道需要备份哪些数据库,就得先列出来 mysql -uroot -pOpenlab123! -N -e show databases | egrep -on_schema|mysql|performance_schema|sys" …

使用BigDecimal定义的实体类字段返回给前台的是字符串类型,如何返回数字类型

目录 前言: 问题现象: 解决方法: 效果: 前言: 做项目的时候数据字段通常定义为bigdecimal类型,方便进行运算,但是发现接口调用后返回给前台的是字符串,这篇博文讲的是如何将定义…

什么是领导力?如何提高领导能力?

什么是领导能力? 简单来说,领导力就是通过自身的影响力,让他人服从自己的想法行动,在一个组织和集体中,领导力的作用十分重要。对于一个公司的管理层来说,领导能力是不可或缺的一部分,公司存在…

共筑信创新生态:DolphinDB 与移动云 BC-Linux 完成兼容互认

近日,DolphinDB 数据库软件 V2.0 与中国移动通信集团公司的移动云天元操作系统 BC-Linux 完成兼容性适配认证。经过双方共同严格测试,DolphinDB 性能及稳定性等各项指标表现优异,满足功能及兼容性测试要求。 此次 DolphinDB 成功通过移动云 B…

华为云Astro Zero低代码平台案例:小、轻、快、准助力销售作战数字化经营

客户背景: 随着业务的不断扩展,华为云某一线作战团队发现,原本基于线上Excel的项目跟踪方式面临新的挑战:多区域、多场景下的业务管理越来越复杂,项目管道存在多种不可控因素,客户关系、进展跟踪同步不及时…