想法: 通过 Babel/TS 插件将 match() 编译为零运行时 if/switch,以实现工作量安全和嵌入式使用

作者: salemkode创建于 2025年5月12日更新于 2025年6月11日
标签enhancement

**您的功能请求是否与问题有关?请描述。** 我感到沮丧的是,`ts-pattern.match()`无法在运行时受限的环境中使用,例如 React Native Reanimated 协作程序。这些环境要求所有逻辑都必须序列化或静态分析可用,并且它们拒绝任何动态闭包或高阶函数。这使得在`worklet`函数中使用`match()`变得不可能,这限制了其在动画、嵌入式解释器或性能关键的用户界面中的实用性 - 尽管`ts-pattern`的语法和完整性检查对于这些情况来说是完美的。

内容来源: gvergnaud/ts-pattern