Generates Angular code and architecture guidance for projects, components, services, signals, forms, DI, routing, SSR, accessibility, animations, styling, testing, and CLI tools.
How this skill is triggered — by the user, by Claude, or both
Slash command
/everything-claude-code:angular-developerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
- 在任何 Angular 项目或代码库中工作
references/angular-animations.mdreferences/angular-aria.mdreferences/cli.mdreferences/component-harnesses.mdreferences/component-styling.mdreferences/components.mdreferences/creating-services.mdreferences/data-resolvers.mdreferences/define-routes.mdreferences/defining-providers.mdreferences/di-fundamentals.mdreferences/e2e-testing.mdreferences/effects.mdreferences/hierarchical-injectors.mdreferences/host-elements.mdreferences/injection-context.mdreferences/inputs.mdreferences/linked-signal.mdreferences/loading-strategies.mdreferences/mcp.mdlinkedSignal 或 resource 实施反应性在提供指导之前始终分析项目的 Angular 版本,因为最佳实践和可用功能在版本之间可能差异很大。如果使用 Angular CLI 创建新项目,除非用户提示,否则不要指定版本。
生成代码时,遵循 Angular 的样式指南和可维护性及性能最佳实践。使用 Angular CLI 搭建组件、服务、指令、管道和路由以确保一致性。
完成代码生成后,运行 ng build 以确保没有构建错误。如果有错误,分析错误消息并在继续之前修复它们。不要跳过此步骤,这对于确保生成的代码正确且功能正常至关重要。
如果用户未提供指南,创建新 Angular 项目时使用以下默认值:
ng new 的执行规则:
当要求创建新 Angular 项目时,必须通过遵循以下严格步骤来确定正确的执行命令:
步骤 1:检查显式用户版本。
npx。npx @angular/cli@<requested_version> new <project-name>步骤 2:检查现有的 Angular 安装。
ng version 以检查系统上是否已安装 Angular CLI。ng new <project-name>步骤 3:回退到最新版本。
ng version 命令失败(表示不存在 Angular 安装),您必须使用 npx 获取最新版本。npx @angular/cli@latest new <project-name>使用 Angular 组件时,根据任务查阅以下参考:
如果您需要上述参考中未找到的更深入文档,请阅读 https://angular.dev/guide/components 处的文档。
管理状态和数据反应性时,使用 Angular Signals 并查阅以下参考:
signal、computed)、反应性上下文和 untracked。阅读 signals-overview.mdlinkedSignal):创建链接到源信号的可写状态。阅读 linked-signal.mdresource):直接将异步数据获取到信号状态中。阅读 resource.mdeffect):日志记录、第三方 DOM 操作(afterRenderEffect)以及何时不使用效果。阅读 effects.md在大多数情况下,对于新应用,首选 signal forms。做出表单决策时,分析项目并考虑以下指南:
如果应用版本支持 Signal Forms 且这是新表单,首选 signal forms。
对于旧应用或现有表单,匹配应用当前的表单策略。
Signal Forms:使用信号进行表单状态管理。阅读 signal-forms.md
模板驱动表单:用于简单表单。阅读 template-driven-forms.md
响应式表单:用于复杂表单。阅读 reactive-forms.md
在 Angular 中实施依赖注入时,遵循以下指南:
inject() 函数。阅读 di-fundamentals.mdprovidedIn: 'root' 选项以及注入到组件或其他服务中。阅读 creating-services.mdInjectionToken、useClass、useValue、useFactory 和范围。阅读 defining-providers.mdinject() 的位置、runInInjectionContext 和 assertInInjectionContext。阅读 injection-context.mdEnvironmentInjector 与 ElementInjector、解析规则、修饰符(optional、skipSelf)以及 providers 与 viewProviders。阅读 hierarchical-injectors.md为以下任何模式构建可访问的自定义组件时:Accordion、Listbox、Combobox、Menu、Tabs、Toolbar、Tree、Grid,请查阅以下参考:
在 Angular 中实施导航时,查阅以下参考:
<router-outlet>、嵌套出口和命名出口。阅读 show-routes-with-outlets.mdRouterLink 的声明式导航和使用 Router 的编程式导航。阅读 navigate-to-routes.mdCanActivate、CanMatch 和其他守卫以确安全性。阅读 route-guards.mdResolveFn 在路由激活之前预取数据。阅读 data-resolvers.md如果您需要更深入的文档或更多上下文,请访问 官方 Angular 路由指南。
在 Angular 中实施样式和动画时,查阅以下参考:
编写或更新测试时,根据任务查阅以下参考:
TestBed 的最佳实践。阅读 testing-fundamentals.mdRouterTestingHarness 进行可靠的导航测试。阅读 router-testing.md使用 Angular 工具时,查阅以下参考:
null 或 undefined 作为初始 signal form 字段值 — 改为使用 ''、0 或 []form.field.valid() — 使用 form.field().valid()[formField] 输入上设置 min、max、value、disabled 或 readonly HTML 属性 — 将这些定义为架构规则inject() — 需要时使用 runInInjectionContextcomputed() 的派生状态使用 effect()@for 循环中引用 $parent.$index — Angular 不支持 $parent;改用 let outerIdx = $indextdd-workflow — 适用于 Angular 组件和服务的测试驱动开发工作流security-review — Web 应用程序的安全检查清单,包括特定于 Angular 的关注点frontend-patterns — React/Next.js 方法的通用前端模式上下文npx claudepluginhub aaione/everything-claude-code-zhGenerates Angular code and provides architectural guidance on signals, forms, DI, routing, SSR, accessibility, animations, styling, testing, and CLI tooling.
Provides expert Angular/TypeScript patterns for standalone components, signals, RxJS, NgRx state management, smart/dumb components, and performance.
Creates and migrates modern Angular (v20+) applications using Signals, Standalone Components, Zoneless mode, and SSR/Hydration with reactive patterns.