Webpack学习笔记(6)

首先搭建一个基本的webpack环境:

执行npm init -y,创建pack.json,保存安装包的一些信息

执行npm install webpack webpack-cli webpack-dev-server html-webpack-plugin -D,出现node_modules和package-lock.json。

1.source-Map(dev-tool)

  • 开发环境建议使用cheap-module-source-map;
  • 生产环境下不建议使用source-map;

2.devServer

在开发环境下启动一个web服务,模拟一个用户从浏览器访问我们web服务器的样子,可以读取我们打包的产物,webpack内置了这个功能。

3.模块热替换与热加载(提高调试效率)

模块热替换:在应用程序运行过程中,替换、添加或删除模块,无需重新加载整个页面。

模块热加载:在修改一个模块时,webpack会帮助我们自动刷新浏览器。

js文件需要手工打开热替换:

像vue、react会默认增加,不需要手动增加。

4.Eslint

eslint是用来扫描我们所写的代码是否符合规范的工具,往往项目是多人协作的,期望使用统一的代码规范,否则每个人的代码规范都不一样,可能会产生错误。

npm init -y创建一个package.json

npm install eslint -D

npx eslint --init配置后生成.eslintrc.json

  • env:脚本的运行环境;
  • extends:配置了airbnb-base扩展,帮助我们检查代码格式;
  • parserOptions:ecmaVersion版本12
  • rules:配置一写规则;
  • globals:执行脚本期间,访问额外的全局变量,不在这个环境中定义的变量。

安装扩展eslint可以检查哪个位置不满足eslint。

5.git-hooks与husky7

为了保证代码符合规范,我们往往想要在提交到git仓库时再去校验,使用husky来实现。

创建一个文件.gitgnore,在这个文件下定义在提交git时不需要提交的,比如node_modules

**/node_modules

git status当前git的状态

cd .git

ls -la

cd hooks

ls -la

.sample文件都是git的hook,hook就是在执行git之前或之后需要运行的一些命令

若我们想要在提交git之前运行一下eslint校验代码,可以在pre-commit.sample这个hook钩子中配置:

cat pre-commit.sample

重新创建:touch pre-commit

ls -la

vim pre-commit,按i插入,写入npx eslint ./src按esc+:wq退出

在运行git时会进行校验。

若把配置放在.git中每个人都不一样,所以需要把配置放在根目录下才有效。

git config core.hooksPath .mygithooks

chmod +x .mygithooks/pre-commit,增加写的权限。

使用husky

安装husky:npm install husky -D

npx husky install生成.husky文件夹

package.json配脚本:

在.husky文件下新建一个pre-commit写一句npx eslint ./src

增加权限:chmod +x .husky/pre-commit

git add.     git commit -m ‘备注’     会实现代码检查 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【学生管理系统】element ui级联菜单bug

级联后端 通过父id来进行查询 GetMapping("/{parentId}")public BaseResult findAllByParentId(PathVariable("parentId") String parentId){//1 根据父id查询所有城市QueryWrapper<TbCity> queryWrapper new QueryWrapper<>();queryWrapper.…

关于无线AP信道调整的优化(锐捷)

目录 一、信道优化的基本原则二、2.4G频段信道优化三、5G频段信道优化四、信道优化代码具体示例五、其他优化措施 一、信道优化的基本原则 信道优化旨在减少信道间的干扰&#xff0c;提高网络覆盖范围和信号质量。基本原则包括&#xff1a; 1. 选择合适的信道&#xff1a;根据…

Ubuntu 下使用命令行将 U 盘格式化为 ext4、FAT32 和 exFAT 的详细教程

Ubuntu 下使用命令行将 U 盘格式化为 ext4、FAT32 和 exFAT 的详细教程 作者&#xff1a;Witheart更新时间&#xff1a;20241228 本教程将详细介绍如何将 U 盘格式化为 ext4、FAT32 和 exFAT 文件系统&#xff0c;同时包括如何安装必要工具&#xff08;如 exfat-utils&#x…

【设计与实现】基于Bootstrap的地方旅游管理系统的设计与实现

目录 第一章 绪论 1.1 研究现状 1.2 设计原则 1.3 研究内容 第四章 系统设计 4.1系统结构设计 4.2系统顺序图设计 4.3数据库设计 第五章 系统实现 5.1登录模块的实现 第一章 绪论 1.1 研究现状 时代的发展&#xff0c;我们迎来了数字化信息时代&#xff0c;它正在渐…

【MySQL高级】索引

MySQL高级课程简介 序号010203041基本硬件知识体系结构应用优化MySQL 常用工具2索引存储引擎查询缓存优化MySQL 日志3视图优化SQL步骤内存管理及优化MySQL 主从复制4存储过程和函数索引使用MySQL锁问题5触发器SQL优化常用SQL技巧 1. 基本硬件知识 1.1 计算机工作原理 1.中央处…

【Redis】:初识Redis

1.1 盛赞 Redis Redis 是⼀种基于键值对&#xff08;key-value&#xff09;的 NoSQL 数据库&#xff0c;与很多键值对数据库不同的是&#xff0c;Redis 中的值可以是由 string&#xff08;字符串&#xff09;、hash&#xff08;哈希&#xff09;、list&#xff08;列表&#xf…

在Linux centos7环境下部署wblogic使用weblogic部署war包项目

准备工作 1、一台配置好centos的虚拟机、 2、关闭并禁用防火墙 3、配置好yum源下载&#xff08;zip、vim、unzip&#xff09;等工具 4、jdk安装包 一&#xff0c;jdk的安装 将jdk安装包上传到opt目录里 [rootlocalhost ~]# cd /opt 解压jdk安装包 [rootlocalhost opt]…

Xdebug

1、开启xdebug扩展 2、修改一下php.ini文件 xdebug.remote_enable 1 xdebug.remote_autostart 13、vscode安装插件php debug 4、生成launch.json文件&#xff0c;好像啥都不用改 5、vscode没有配置php路径的&#xff0c;需要去配置&#xff1a; 6、发起请求 8、代码断…

QWidget应用封装为qt插件,供其他qt应用调用

在之前的文章中,有介绍通过QProcess的方式启动QWidget应用,然后将其窗口嵌入到其他的qt应用中,作为子窗口使用.这篇文章主要介绍qt插件的方式将QWidget应用的窗口封装为插件,然后作为其他Qt应用中的子窗口使用. 插件优点: 与主程序为同一个进程,免去了进程间繁琐的通信方式,…

人工智能与云计算的结合:如何释放数据的无限潜力?

引言&#xff1a;数据时代的契机 在当今数字化社会&#xff0c;数据已成为推动经济与技术发展的核心资源&#xff0c;被誉为“21世纪的石油”。从个人消费行为到企业运营决策&#xff0c;再到城市管理与国家治理&#xff0c;每个环节都在生成和积累海量数据。然而&#xff0c;数…

使用seata实现分布式事务管理

配置 版本说明&#xff1a;springCloud Alibaba组件版本关系 我用的是spring cloud Alibaba 2.2.1.RELEASE 、springboot 2.2.1.RELEASE、nacos 2.0.1、seata1.2.0,jdk1.8 seata 主要用于在分布式系统中对数据库进行事务回滚&#xff0c;保证全局事务的一致性。 seata的使用…

前端node.js

一.什么是node.js 官网解释:Node.js 是一个开源的、跨平台的 JavaScript 运行时环境。 二.初步使用node.js 需要区分开的是node.js和javascript互通的只有console和定时器两个API. 三.Buffer Buffer 是一个类似于数组的对象&#xff0c;用于表示固定长度的字节序列。 Buffer…

LoRA微调系列笔记

系列文章目录 第一章&#xff1a;LoRA微调系列笔记 第二章&#xff1a;Llama系列关键知识总结 第三章&#xff1a;LLaVA模型讲解与总结 文章目录 系列文章目录LoRA&#xff1a;Low-Rank Adaptation of Large Language Models目的&#xff1a;依据&#xff1a;优势&#xff1a;…

khadas edge2安装ubuntu22.04与ubuntu20.04 docker镜像

khadas edge2安装ubuntu22.04与ubuntu20.04 docker镜像 一、资源准备1.1 镜像文件1.2 刷机工具1.3 ubuntu20.04 docker镜像&#xff08;具备demon无人机所需各种驱动&#xff09; 二、开始刷机&#xff08;安装ubuntu22.04系统&#xff09;2.1 进入刷机状态2.2 刷机 三、docker…

PhPMyadmin-cms漏洞复现

一.通过日志文件拿Shell 打开靶场连接数据库 来到sql中输入 show global variables like %general%; set global general_logon; //⽇志保存状态开启&#xff1b; set global general_log_file D:/phpstudy/phpstudy_pro/WWW/123.php //修改日志保存位置 show global varia…

FPGA流水线考虑因素

流水线考虑因素 另一种提升性能的方法是对拥有多个逻辑级数的长数据路径进行重新组织&#xff0c;并将其分配在多个时钟周期上。这种方法 以时延和流水线开销逻辑管理为代价&#xff0c;来达到加快时钟周期和提高数据吞吐量的目的。 由于 FPGA 器件带有大量的寄存器&#x…

语言模型的革命:大型概念模型(LCM)的崛起

在人工智能领域&#xff0c;Meta最近推出的一项重大突破正在引起研究人员和开发者的广泛关注&#xff1a;大型概念模型&#xff08;Large Concept Models&#xff0c;简称LCM&#xff09;。这一创新彻底改变了我们对语言模型的理解&#xff0c;并为未来AI技术的进展指明了新的方…

郴州年夜饭大数据分析:Python爬虫的美味之旅

在春节这个阖家团圆的日子里&#xff0c;年夜饭无疑是最具仪式感的一餐。郴州&#xff0c;这座美食之城&#xff0c;其年夜饭的餐桌上自然少不了那些让人垂涎三尺的地道美食。作为一名热爱美食的程序员&#xff0c;我决定用Python爬虫技术&#xff0c;为大家揭秘郴州年夜饭的必…

STM32-笔记17-PWM波型

一、介绍 PWM波形&#xff08;Pulse Width Modulation&#xff0c;脉冲宽度调制波形&#xff09;是一种占空比可变的脉冲波形。这种调制方式通过改变脉冲的宽度来控制电路中的信号强度和频率。具体来说&#xff0c;PWM波形中的高电平持续时间和低电平持续时间可以根据需要进行调…

HTML——16.相对路径

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title></head><body><a href"../../fj1/fj2/c.html" target"_blank">链接到c</a><!--相对路径&#xff1a;-->…