初学 TypeScript 遇到此问题:
静态属性修饰符 static
和私有类字段前缀 #
互斥。
我的方案(目前测试项目是基于 rollup 构建的):
rollup & Babel 生态支持伪 TypeScript【Done】
借助 Babel 的预设或者插件可以解决问题一,但这是会丧失 type check
,这显然违背了使用 TS 的初衷,不到万不得已本人并不想采用此方案;
rollup & TypeScript【TODO】
使用了 rollup 的 TypeScript 插件,其中在 TS 编译之前转化代码的 before
钩子配置,我尝试使用 Babel
的编译功能作为 TS 编译的前置钩子,也就是在 TS 真正编译之前先让 Babel
转化 static #propName
语法,然后再让 TS 编译,目前是理论阶段,因为我的工厂函数失效了,不知道有没有大佬尝试过 before
转化这种 rollup
的 TS 插件配置,请问此思路是否存在可行性。
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…