Cleants:开历史的倒车,但至少我是认真的

1 天前
 viarotel

Cleants 帮助你做一件勇敢的事情——逆行在技术的高速公路上。如果你厌倦了过度复杂化的开发,渴望回归简洁的 JavaScript 世界,那么 Cleants 就是为你准备的工具。它可以让你在现代 TypeScript 项目中时光倒流,回到更简洁、更直接的 JavaScript 。

什么是 Cleants ?

Cleants 代表“Clean TypeScript to JavaScript conversion”,是一款快速将 TypeScript 转换为 JavaScript 的工具。它不仅支持 Vue 项目,还提供插件系统扩展功能,并保持极致的转换速度。

主要特点

为什么选择 Cleants ?

  1. 速度快:使用 ts.transpileModule 编译,飞快地完成转换。
  2. 简单易维护:移除复杂的类型系统,让项目更轻量化。
  3. 零学习曲线:如果你会 JavaScript ,那就已经会用 Cleants 了。

如何使用 Cleants ?

CLI

只需运行以下命令:

npx cleants

编程接口

如果你想在项目中集成 Cleants ,可以这样用:

import { Cleants } from 'cleants'
const cleaner = new Cleants('输入目录', '输出目录', options)
await cleaner.run()

API

Cleants

这个类是 Cleants 的核心,负责将 TypeScript 转换为 JavaScript 。

constructor(inputDir: string, outputDir: string, options?: CleantsOptions)
可选参数

结语

Cleants 让你在纷繁复杂的现代技术栈中“刹一脚”,回归到简单、直接的 JavaScript 开发方式。无论你是追求速度、简洁,还是只是想嘲笑一下自己“开历史的倒车”,Cleants 都是不错的选择,哈哈。

想了解更多,请访问项目地址:Cleants GitHub.

1301 次点击
所在节点    分享创造
23 条回复
viarotel
7 小时 6 分钟前
@shunia 你说的没有一点问题,我没有质疑 ts 带来的价值,也许我的描述有些过激,我只是觉得并不是所有的项目或情况都适合使用它,特别是团队人员水平参差不齐的情况下,也不是所有人都能进大厂,总有些挣扎在温饱线上的打工人,他们不在乎代码写的好不好,规不规范,他们只想早点下班,萝卜青菜各有所爱,不是吗?
shunia
5 小时 23 分钟前
@viarotel #21 我没有在争论的意思,你的分享也是一种创造,我给你点赞,这点请先理解。

但是我觉得你说的那句话有误导的成分,所以我才比较严肃的提出问题。

最后你 21L 的回复我觉得有点走的更偏了。

首先用不用 ts 和大厂毫无关系,因为我一路走过来都是小厂,团队里面也参差不齐,大家也都需要温饱,也有人写代码不遵循规范,但是没有人质疑过 ts 。什么东西好什么东西不好,这是作为一个专业人员的基本素养。和电工一摸电线就知道有没有电一样😂

其次大家都想早点下班,就我的经验来看,同样的代码用 ts 写绝对比用 js 写,能让我早下班。不管是我写的还是别人写的:

比如 react 的源代码是用 js 写的,我想搞清楚它其中的一部分代码的运行原理,就一定比同样用 ts 写出来的慢。原因很简单,不管是谁,写 js 代码的时候,都不可避免的会上各种黑魔法,尤其是往任何变量上直接附加额外的数据或者逻辑,甚至是改变原有的指向,而且喜欢隐藏在角落里。我最近用过的几个 js 写的库,我都看过了,全都藏着这种黑魔法,想看懂这种代码,一定会耗费更多的精力,因为天知道这坨东西在哪里被覆盖或者重定向了。ts 也不能解决这个问题,但是在遵循规范的前提下,黑魔法是相比 js 写的要更少的。

包括我自己写一些东西,如果用 js 我就会忍不住上魔法,因为确实写起来更爽利。但是对读者和接手的人就及其不友好了。

ts 是前端无数轮子也好、创新也好,我用过的技术种类里,最少操心而且带来最大收益的一个了。日常用下来真的省心又省事,更新了这么多年也没有像 react 一样开倒车,也没有像 vue 一样弄出无法平滑迁移的大版本,更没有像 angular 一样不思进取。

- 学习成本足够低,还支持渐进式引入
- 几乎全工具链完美支持,甚至新开的各种 runtime 都在默认支持
- 一本 handbook 能解决日常遇到的绝大部分问题
- 态度也很好,可以各大 bundler 协调主动调整 compilerOptions
- 真正的商业级的官方支持

这么优秀的工具,我个人觉得所有 js 人都值得拥有。
viarotel
4 小时 57 分钟前
@shunia #22 非常感谢你深度的理解和刨析,我虽然在上述描述中表达我不喜欢 TS ,但是我确实在相当长的时间内去理解和学习了 TS ,但是有一点不会改变,我不喜欢 TS 啰里啰唆的类型体操,这确实是我个人喜好问题,但是我不会阻止别人使用它,我只是提供一个回退选项,仅此而已;最后,即使不喜欢,我仍然会在需要 TS 的场景下的时候使用它;最后的最后,再次感谢你,让我更有 “勇气” 去使用 TS ,哈哈😁

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

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

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

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

© 2021 V2EX