模块化开发与规范化标准

模块化开发与规范化标准
为什么要有规范标准

软件开发需要多人协同

不同的开发者具有不同的编码习惯和喜好

不同的喜好增加项目维护成本

每个项目或者团队需要明确统一的标准

哪里需要规范化标准

代码、文档、甚至是提交日志

开发过程中人为编写的成果物

代码标准化规范最为重要

实施规范化的方法

编码前人为的标准约定

通过工具实现Lint

常见的规范化实现方式

ESlint 工具使用

定制ESlint校验规则

ESlint 对TypeScript的支持

ESlint 结合自动化工具或者Webpack

基于ESlint 的衍生工具

Stylelint 工具的使用

ESlint 介绍

最为主流的javascript lint 工具监测js代码质量

ESlint 很容易统一开发者的编码风格

ESlint 可以帮助开发者提升编码能力

ESlint

初始化项目

安装ESlint 模块开发依赖

通过CLI命令验证安装结果

npm init --yes
npm install eslint --save-dev

查看版本

.\eslint --version

npx eslint --version 需要安装最新版本的npm工具

yarn eslint --version

ctrl+k ctrl+0 折叠所有的代码
eslint 结合自动化工具

初始化,创建eslintrc.js文件

npx eslint --init

在gulpfile.js中使用

.pipe(plugins.eslint())

.pipe(plugins.eslint.format())

.pipe(plugins.eslint.failAfterError())

eslint 结合webpack配置

增加eslint-loader

.eslintrc.js

增加

rules:{'react/jsx-uses-react':2, //react 定义却未使用

​	‘react/jsx-uses-vars’:2  //app中报错

}

plugins:['react'

]
现代化项目集成ESlint

vue-cli

npm install @vue/cli -g 

vue create syy-vue-app


ESlint 检查 typeScript

.eslintrc.js

parser:'@typescript-eslint/parser'

parserOptions:{

​	ecmaVersion:11

}
styleLint
npm install stylelint-config-standard -D

stylelintrc.js中配置

module.exports = {extends:[
    	'stylelint-config-standard',
    	'stylelint-config-sass-guidelines'
    ]

}

npm install stylelint-config-sass-guidelines -D

Prettier 的使用

前端文件自动格式化

.vue .html .package.json .jsx .js .css .scss

npm installl prettier 

文件内容打印在终端中

npx prettier style.css  

覆盖源文件

npx prettier style.css --write  

将所有的文件格式化

npx prettier . --write
Git Hooks介绍

Git Hooks 也称之为git 钩子 ,每个钩子都对应一个任务

通过shell 脚本可以编写钩子任务触发时要具体执行的操作

ESlint 结合Git Hooks

Husky可以实现Git Hooks的使用需求

"husky":{

​	"hooks":{

​		"pre-commit":"npm run test"

​	}

}

"lint-staged":{

​	"*.js":[

​		"eslint",
		"git add"
​	]

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值