写了一份前端 Linter 的总结教程

2022-01-18 15:23:37 +08:00
 Haixiang

最近在搞项目的基建,在配置 ESLint 和 Prettier 的时候感觉非常痛苦:NPM 的包太多了,而且名字又太像: eslint-plugin-prettier, eslint-prettier, eslint-config-prettier...

不仅配好了 ESLint 还要考虑 ESLint x TypeScript 结合,ESLint x LintStaged 结合等等一堆东西。受不了了,所以直接重新学习了一下前端 Linter 这块的内容,最后写了一份总结:

上手教程网站

Github

希望可以帮助前端 er 来理解这些概念。如何你看完这个教程后再看自己项目的 .eslintrc, .prettierrc 以及 package.json 里相关 NPM 包时,都能知道他们什么意思,那这个教程的目的就达到了。

因为网上对这些工具的介绍都比较简单,所以我能参考的资源也比较少,一般来自文档、Issue 和 Wiki ,所以如果你发现了错误,或者你有更好的配置方案,也可以提 Issue ,不要喷太重哈~ 小弟我已经尽力了。

这里依然有两个问题我没能解决:

目前我翻看了网上一些文章和文档,都没找到更好的解决方案,小弟我已经尽力了。

4570 次点击
所在节点    程序员
48 条回复
xujiahui
2022-01-19 19:22:41 +08:00
厉害,第一次这么全的了解 lint ,不过我挺不喜欢用 eslint 的,语法问题现在的 IDE 都提示的挺好了,格式化代码用 prettier 是真香,但是挺多同事不知道这个,老项目也没法改
Haixiang
2022-01-19 19:24:24 +08:00
@Haixiang 可以看看 https://github.com/prettier/eslint-plugin-prettier Github 的 Exactly what does plugin:prettier/recommended do? Well, this is what it expands to: 这里
Haixiang
2022-01-19 19:25:56 +08:00
@xujiahui eslint 主要还是团队内一些规则约定吧,不能保证所有人的 IDE 都能这么智能地提示
xujiahui
2022-01-19 19:48:03 +08:00
@Haixiang 现在前端 IDE 基本就 WebStorm 和 VSCode 了吧,eslint 本身配置项太多太麻烦,有时候临时写的调试代码还会触发 error ,得用注释禁用 eslint ,就感觉挺烦的
Ritr
2022-01-19 22:32:17 +08:00
有没有那种一键配置好的,真不想配这玩意,太费劲啦
Haixiang
2022-01-20 09:23:43 +08:00
@Ritr 这也是我觉得很痛苦的一点,前端的工具除了要各自为战,还有一个原因是前端发展太快了,时不时出新东西,后面的工具就像打补丁一样,要么出 NPM 包,要么自身的 Issue 没解决完
GeekJason
2022-01-20 15:42:01 +08:00
最近在设计前端团队协作规范,巧合看到了 OP 的帖子,非常有用,感谢分享
Haixiang
2022-01-20 16:58:50 +08:00
@GeekJason 🤟

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/829010

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX