SuperAPI AI 工具集

discriminated-unions

编程与开发

查看项目

更新于 10-16 06:48

技能介绍

用途:依据 TypeScript Style Guide 的可辨识联合(discriminated unions)约定,在当前任务中应用、审查或解释相关写法。可辨识联合是共享一个属性、但该属性取不同字面量值的对象类型联合,检查该属性即可把值收窄到对应变体。

主要能力:用于互斥且各变体需要不同数据的场景;用变体专属的必填属性替代相互依赖的可选属性;配合 ESLint 穷尽性检查(配置 {"@typescript-eslint/switch-exhaustiveness-check": "error"})在 switch 未覆盖所有变体时报告;借助 TypeScript 收窄在编译期保证正确性,并改善重构、自动补全与类型推断。

使用方式与工作流:先检查使用方仓库的约定与配置,显式仓库约定优先于本指南;只应用、审查或解释与任务相关的指导;当合适模型取决于上下文或判断时,说明重要权衡。典型应用包括:对象必填与可选属性、应用状态建模(如 idle/loading/success/error)、函数参数、React props(含变体 props)。

限制与边界:仅当变体互斥且各自需要不同数据时使用;属性可能独立缺失,或只是值变化时,不要强行使用可辨识联合(后者用字面量联合);把 TypeScript 与 ESLint 能自动检查的事交给它们;不要仅因该技能启用就引入无关的风格指南约定。资料未提供具体安装命令、收费与定价、平台支持等信息。