用途:这是一个应用 Feature-Sliced Design(FSD)v2.1 架构方法论的前端技能,帮助组织代码结构、拆分功能并为前端项目搭建目录约定,使项目更易理解、维护,并能应对业务需求变化。
主要能力与结构:FSD 用 6 个标准化层级做垂直组织,从具体到通用依次为 app、pages、widgets、features、entities、shared。导入规则是模块只能从严格位于其下方的层导入,禁止向上导入和同层跨切片导入。切片(slices)按业务域组织,须彼此独立且内聚;段(segments)按技术目的划分,常见有 ui、api、model、lib、config,每个切片需通过 index 文件定义公开 API,外部只能从公开 API 导入。v2.1 新增 @x 标记,用于在同一层(通常是 entities)之间建立受控的显式跨导入,常规跨导入仍不允许。
使用方式:遵循“Pages First”决策框架。先问代码在哪里使用:仅一个页面用就留在该页面;一个部件跨多页用就留在部件;跨多页/部件复用时再判断是否为可复用基础设施(shared)、完整用户操(features)或业务领域概念(entities);全局设置放 app。路径别名可参照 tsconfig 的 paths 配置使用 @/ 前缀。
适用场景与限制:适合需要长期维护、需求频繁变化的前端项目。不要过早抽取实体和功能;共享层不得包含业务逻辑、特定功能或特定实体的代码,仍允许路由常量、API 端点定义、品牌资源和应用配置。processes 层在 v2.1 已废弃,应迁至 features,必要时借助 app。安装命令、收费与价格等信息暂未提供。