网站首页 > 技术文章 正文
在开发人员中,关于最佳编辑器之争从来都是一个无休止的话题,从古至今,这个话题从来没有探讨出一个满意的结果。
对于代码的格式,自古以来也是每个人都有自己的偏好,为了统一代码格式,人们想尽了办法,这也是golang为什么自带了一个格式化代码的工具,就是为了让代码格式变得统一,变得更加容易所有人阅读。
而我们今天要讨论的eslint和prettier就是两个前端统一代码样式的工具。
ESLint
eslint是在2013年诞生的,现在它已经成为了最著名的代码格式化工具,每天都有百万的下载量。
eslint这个工具它会分析我们的代码样式,然后它会找出错误格式和代码中的错误。
使用它非常方便,你只需要通过npm安装就可以,然后在项目中通过初始化来使用它,最后在package.json添加运行代码
npm i -g eslint eslint --init
script:{ "lint":"eslint" }//npm run lint
eslint的所有设置都可以进行配置,你可以让它只是检查语法,也可以让它不仅检查语法还要找出错误,当然你还可以配置它对代码样式进行修改。
eslint支持三大前端框架,你可以轻松地在项目中集成使用它。
eslint默认提供了谷歌,airbnb,官方三种代码样式供选择,当然对于具体的配置,你也可以根据自己的项目进行适当调整。
下面是eslint初始化后生成的js文件。
module.exports = {
'env': {
'browser': true,
'es2021': true,
'node': true
},
'extends': 'eslint:recommended',
'parserOptions': {
'ecmaVersion': 13,
'sourceType': 'module'
},
'rules': {
'indent': [
'error',
4
],
'linebreak-style': [
'error',
'unix'
],
'quotes': [
'error',
'single'
],
'semi': [
'error',
'never'
]
}
}
Prettier
Prettier是在2016年创建的,它是一个固执的有自己主见的代码格式化工具,它支持很多语言,并且支持很多编辑器,它的配置很少,你甚至可以安装完之后,零配置使用它。
它诞生的目的就是为了让你不用关系你的代码书写结构,因为当你保存代码的时候,它会自动帮助你格式化你的代码,并且不会修改你的代码内容,因为它修改的知识代码的结构视图。
Prettier的最主要的目的就是为了让人们不在纠结代码的样式,而是全神贯注去考虑代码的性能和功能。
Prettier可以说是前端格式化的神器,除了html,css,js外,它还支持ts,json,yml,graphql等,此外,前端三大框架vue,angular,react它都是 支持的。
ESLint Vs Prettier
相比于Prettier,ESlint不仅仅可以格式化代码,更主要的是它可以帮助开发者发现代码中的错误。当一个变量声明之后但是没有使用,它会给出警告。当一个数字类型变量赋值了字符串时,它会给出错误提示。
ESlint会在格式化代码的时候,去修复代码中的错误,而Prettier更多地是去格式化代码而忽略代码中的错误。
Prettier可以定制很多代码格式化的选项,你可以控制代码的宽度,可以控制代码中空格的长度,你可以控制是否使用分号结尾,当然了,这些在ESlint中也可以定制,这么看来,似乎ESlint应该是最佳选择。
但是术业有专攻,Prettier就是专门为了格式化代码而生的。对于代码中的一些问题,ESlint可能无法正确格式化,这个时候,Prettier就可以很好的完成格式化的任务。
一个擅长格式化代码,一个擅长发现代码的错误,那么它们俩可以结合使用吗?答案是肯定的。
在Prettier的官网中,官方已经给出了集成ESLint的解决方案,你可以参照文档将两者合二为一。
如果你的代码还没有使用它们,那么我强烈建议你去尝试使用它们,在团队化的项目中,你会发现使用了它们会让你真个团队的代码看起来整齐划一。
总结
无论是prettier还是eslint,它们都是通过配置文件来进行运行的,因此在使用它们的时候,你要格外留意配置文件的各个选项和使用方式,此外,因为eslint有些时候过于缓慢,人们还提出了eslint_d这个工具,它的用法和eslint一样,但是性能速度上却比前者快很多,你可以亲自尝试下。
所有的工具都是为了提升开发效率,提高编码效率,如果你真的觉得这些工具妨碍了你的效率,你完全可以不使用它们,但是我相信大多时候,使用这些工具一定会提升你的开发效率,否则它们就不会诞生,也不会有这么多人来使用它们了。
猜你喜欢
- 2025-04-30 Express 系列:结合实例讲解开发一个Node命令行工具
- 2025-04-30 Volta:跨平台开发者的福音,统一前端js工具链从未如此简单!
- 2025-04-30 前端宝藏开发工具推荐:PxCook(前端开发 app)
- 2025-04-30 从开发、部署到训练,联发科用一站式开发工具加速AI落地的每一步
- 2025-04-30 Vite成为首个接入AI的构建工具,前端开发效率提升200%!
- 2024-09-11 必备!11个适用于前端开发人员的有用在线工具
- 2024-09-11 前端开发者常用的构建工具
- 2024-09-11 前端专业人士都会用到什么软件和工具?这篇文章告诉你
- 2024-09-11 十个前端冷门但好用的前端工具函数库
- 2024-09-11 月薪过万必备:开发 CSS 最好的前端工具推荐
你 发表评论:
欢迎- 05-10如何优化数据库和前端之间的交互?
- 05-10前端代码优化小秘籍(前端优化24条建议)
- 05-10VS Code当中的15个神仙插件,值得收藏
- 05-10如何自己开发一个Google浏览器插件?
- 05-10前端流行框架Vue3教程:14. 组件传递Props效验
- 05-10吃了一年的SU,最好用的插件都在这了
- 05-10前端必看!这款神器让网站界面告别千篇一律
- 05-10程序员请收好:10个非常有用的 Visual Studio Code 插件
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端md5加密 (49)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- 前端懒加载 (45)
- 前端接口 (46)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle查询数据库 (45)
- oracle约束 (46)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- mac oracle (47)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)