用途
flags 是一个用于查看和调试 React 功能开关(Feature Flags)的技能。当你需要检查功能开关状态、比较不同发布渠道(channels)之间的差异,或排查某个功能为何在不同发布渠道中表现不一致时,可以使用它。
主要能力
该技能通过运行 yarn flags $ARGUMENTS 命令来获取功能开关信息,并支持以下选项:
- (无选项):显示所有渠道中的所有功能开关。
- --diff <ch1> <ch2>:比较两个渠道之间的功能开关差异。
- --cleanup:按清理状态对功能开关进行分组显示。
- --csv:以 CSV 格式输出结果。
涉及的发布渠道包括:
- www、www-modern:Meta 内部渠道
- canary、next、experimental:开源(OSS)渠道
- rn、rn-fb、rn-next:React Native 渠道
输出中使用图例表示状态:✅ 表示启用,❌ 表示禁用,🧪 表示 VARIANT,📊 表示仅用于性能分析(profiling-only)。
使用方式
- 运行
yarn flags $ARGUMENTS,其中 $ARGUMENTS 为可选参数(即上述选项)。 - 向用户解释输出结果。
- 当使用 --diff 时,重点说明有意义的差异。
适用场景
- 检查某个功能开关在特定渠道中是否启用。
- 对比两个渠道之间的功能开关配置差异。
- 排查功能在不同发布渠道中行为不一致的原因。
- 按清理状态梳理功能开关,辅助清理工作。
限制与常见错误
- 容易忽略 VARIANT 类型的开关:这类开关在 www 中会以两种方式分别测试,需要同时检查两种变体。
- 容易比较错误的渠道:应使用 --diff 查看确切的差异,避免凭印象判断。
关于该技能的更多细节(如具体实现、依赖环境等),资料中暂未提供。