带有 ESLint 和 Prettier 的 TypeScript 轻量级脚本支持
Posted
技术标签:
【中文标题】带有 ESLint 和 Prettier 的 TypeScript 轻量级脚本支持【英文标题】:TypeScript lightweight scripting support with ESLint and Prettier 【发布时间】:2021-01-11 22:16:55 【问题描述】:TypeScript/ESLint/Prettier 已成为我最喜欢的各种任务工具。 但是,我仍在为只有几十行代码的小型 Nodejs 脚本而苦苦挣扎。 要编写一个具有舒适 IDE 体验的小型 Nodejs 脚本,我需要:
创建一个 package.json 配置 tsconfig(严格编译) 配置 ESLint 配置更漂亮 如果我关心启动性能,请编译为 javascript(见下文)对于小脚本来说,这是相当多的仪式。我有脚本,其中这些配置文件大于实际代码。 如果您只想进行一些小调整然后重新运行脚本,那么 JavaScript 编译会特别烦人。
理论上,存在ts-node
可以解决这些问题。
但是,我对ts-node
感到困惑,原因如下:
对于如何快速编写小脚本,同时不影响 ESLint/Prettier 体验,您有什么建议吗?
【问题讨论】:
【参考方案1】:对此我的部分解决方案是编写一个 eslint 配置来检查 package.json
并自动配置我的项目使用的任何工具
https://github.com/davidjbradshaw/eslint-config-auto
对于其他部分,我将使用一个简单的样板项目作为起点。
【讨论】:
自检可能是一个很好的解决方案。但是,我正在寻找专门用于 Nodejs-CLI 脚本的东西。因此,我既不需要 Babel 也不需要 React 来完成这些任务。 它们仅在项目需要时才加载,可能会根据您自己的需要分叉项目 无论如何我很想知道对此还有什么其他答案,所以会继续跟进 对不起,我好像误解了你的工具。所以 ESLint 和 Prettier 可能就解决了,剩下的就是 tsconfig 和 JavaScript 编译了。 也许检查 kcd-scripts 的其他位以上是关于带有 ESLint 和 Prettier 的 TypeScript 轻量级脚本支持的主要内容,如果未能解决你的问题,请参考以下文章
Eslint 和 Prettier 冲突(eslint-config-prettier 不工作)
ESLint 和 Prettier 冲突,无法为代码块禁用 Prettier
为啥看起来 eslint 和 prettier 好像在打架?
Linter:“在 React + TS + 样式化组件上插入 `··` eslint(prettier/prettier)”