一起来用 eslint 吧

在 TypeScript 中我们一直使用 tslint 来对我们的代码质量进行保障。但是 tslint 是 eslint 的子集。tslint 大概提供了 151 条基础规则,eslint 却有 249 条,更不用说 eslint 发达的生态了,提供了更多的规范代码。tslint 团队也发现了这个问题,并且决定转移到 eslint 中。

起因

在 Pro v4 的筹备中,我们增加了一个将 TypeScript 转化为 JavaScript 的 功能,转化完成之后我们跑了一遍 eslint 和 prettier 来让代码更像是人写的。结果转化完成之后的 js 代码无法通过 eslint 的检查:

比如这里:

还有这里:

结果

如果我们使用的是 eslint,这些问题应该会直接暴露。于是开始进行了调研和使用。首先在 Pro 中尝试了一把。效果很不错,具体可以看这个 PR。一鼓作气我在pro-blocks 中也加入了这个 lint。

我们将这些规则发布成了一个包 umi-fabric , 这个库提供了 eslint ,stylelint 和 prettier 的一些预设,非常适合所有人使用。所有打开的规则都是对提升代码质量有意义的。

使用

umi-fabric 的使用非常简单。

npm install eslint @umijs/fabric -save-dev

并且在根目录 .eslintrc.js 中做如下配置。

const fabric = require('@umijs/fabric');
module.exports = fabric.eslint;

在 vscode 中 eslint 的插件并不会默认的去 lint .ts 文件,我们需要在 settings.json 中设置

  "eslint.validate": ["javascript","javascriptreact","typescript","typescriptreact"],

接下来就可以愉快的使用了。使用 eslint fix 一下老的 ts 代码有奇效哦。

查看原文​pro.ant.design

eslint是什么_一起来用 eslint 吧相关推荐

  1. 基于ESlint在项目中扩展自己的ESlint规则

    目录 效果展示 源码分析 在团队开发中,经常会碰到这样的场景: 来一个新人,碰到需求需要处理日期,但不知道项目中已经有封装好的日期库,就自己做了一个轮子 又来一个新人,碰到弹层用官方的是Modal,但 ...

  2. vscode设置eslint检验无效_大整理!JavaScript开发者的27个神奇VSCode工具

    全文共5630字,预计学习时长11分钟 图片来源:Ali Zolghadr/Unsplash Visual Studio Code(也被称为VSCode,https://code.visualstud ...

  3. eslint是什么_为什么eslint没有 no-magic-string?

    为什么eslint没有 no-magic-string? 最近参加了几次公司组内的Code Review, 发现了一些问题.其中一些问题可以通过工具(比如eslint)解决. 我们就想着通过工具自动化 ...

  4. 【eslint】Identifier ‘***_***‘ is not in camel case

    问题描述 与服务端对接的字段中,使用到下划线,但是与eslint默认的检测冲突 问题解决 在.eslintrc.js文件中添加如下内容 rules: {camelcase: "off&quo ...

  5. 编辑器eslint格式_VScode格式化代码,开启ESlint代码检测方法,eslint代码配置

    ESlint:是用来统一JavaScript代码风格的工具,不包含css.html等. 背景: 近来研究前端,然后一直在百度上找VScode格式化(ESlint)的插件,结果找了半天都不靠谱.目前没有 ...

  6. typescript 中使用 setTimeout 返回值类型 eslint 检查错误 ‘NodeJS‘ is not defined.eslint(no-undef)

    项目场景: 前端项目 使用typescript eslint 问题描述 使用setTimeout 函数,接收其返回值. 返回值类型 function setTimeout<TArgs exten ...

  7. ESLint报错解决方案(error: No ESLint configuration found)

    ##ESLint使用的时候报错:error: No ESLint configuration found 在项目部署中出现报错error: No ESLint configuration found, ...

  8. eslint规范_规范统一前端代码风格

    背景 众所周知,前端项目的代码质量和代码格式的校验是不可或缺的.很早之前在一个人开发的时候,脚手架生成vue项目的时候都没有打开过eslint,后面有位大佬加入,给boss说,加了个插件(eslint ...

  9. eslint 保存自动格式化_代码规范之理解ESLint、Prettier、EditorConfig

    授权转载自:nowThen https://juejin.cn/post/6895889063111294990 前言 团队多人协同开发项目中困恼团队管理一个很大的问题是:无可避免地会出现每个开发者编 ...

最新文章

  1. python—多线程数据混乱问题解决之同步锁
  2. java发送http请求的四种方式
  3. 前端性能优化 -- 从 10 多秒到 1.05 秒
  4. DHCP和DHCP中继功能与配置
  5. [ZZ] 使用rsync来实现快速删除大量文件
  6. vss登录invalid handle问题的解决办法
  7. 制造业数据分析存在哪些问题
  8. 联想拯救者Y7000p拆机换压条(轴盖)
  9. 01_基于蒲公英R300A的异地组网PLC调试实现
  10. Audio专业名词解析
  11. Abaqus应力结点数据导出与处理
  12. linux 相关快捷键
  13. (一)传说中“哈佛最受欢迎的课程”
  14. 小程序不用服务器可以上线吗?
  15. Windows10安装Linux子系统Ubuntu 20.04LTS,轻松使用生信软件,效率秒杀虚拟机(转载)
  16. Linux 安装DockerMysql
  17. Webservice-2
  18. 阿里云大数据之MaxComputer简介
  19. Dell戴尔G7 7588换m.2 nvme固态硬盘+系统迁移
  20. 国税总局金税三期工程-goldengate

热门文章

  1. 桶排序Bucket sort(转)
  2. Java--Socket客户端,服务端通信
  3. postgreSQL源码分析——索引的建立与使用——GIST索引(2)
  4. centos 6.7 mysql 5.6_CentOS 6.7 安装 MySQL 5.6 思路整理
  5. 计算机丢失binkw32会怎么样,binkw32.dll 丢失 binkw32dll安装在哪
  6. 圣诞美妆海报还没想好怎么设计,看这里,PSD分层模板!
  7. UI设计中的黄金分割率,实用案例适合临摹学习
  8. 设计干货素材模板|常见的UI设计手法
  9. 设计干货|菜单 - 导航UI移动版模板
  10. 跟驰理论 matlab,第5章跟驰理论48127855.ppt