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 '备注' 会实现代码检查

相关推荐
宇寒风暖13 分钟前
软件工程期末大复习(三)
笔记·学习·软件工程
bylander2 小时前
【AI学习】2024年末一些AI总结的摘录
人工智能·gpt·学习
YuCaiH3 小时前
【无线传感网】无线传感器网络安全
笔记·无线传感网
虾球xz3 小时前
游戏引擎学习第70天
学习·算法·游戏引擎
Good Note4 小时前
MySQL数据库笔记——多版本并发控制MVCC
数据库·笔记·mysql
永远不会太晚5 小时前
前端vue+el-input实现输入框中文字高亮标红效果(学习自掘金博主文章)
前端·vue.js·学习
qq_450077945 小时前
WireShark抓包学习
网络·学习·wireshark
半夏知半秋5 小时前
python文件操作相关(csv)
开发语言·笔记·python·学习
咬光空气5 小时前
Qt 5.14.2 学习记录 —— 일 新项目
开发语言·qt·学习
暗暗那5 小时前
华为研发工程师编程题——明明的随机数
javascript·数据结构·笔记·算法·leetcode·华为