Angular 是一个由 Google 维护的完整前端框架,基于 TypeScript,提供模板语法、依赖注入、路由、表单、HTTP 客户端等内置功能,强调可预测性、可测试性与长期可维护性。
Angular 是一个由 Google 维护的前端 Web 应用框架,不是库,也不是“JavaScript 的某个语法”或插件。它提供一整套工具和约定,用于构建结构清晰、可维护、可测试的单页应用(SPA)。
它自带模板语法、依赖注入、路由、表单处理、HTTP 客户端、状态管理支持(如 NgRx)、构建工具(Angular CLI)等。你不需要自己拼凑多个库来实现基础功能——这些能力在项目初始化时就已集成好。
常见做法包括:
Angular 掌控更多底层行为:它决定组件如何渲染、变更检测怎么触发、依赖如何创建和注入、模块如何编译和加载。开发者需遵循它的规则(如装饰器 @Component、@Injectable),而不是自由组合任意第三方方案。
相比之下:
、升级路径明确Angular 不是 JavaScript 的一部分,也不改变 JS 语法。它基于 TypeScript 开发,强制使用类、接口、装饰器等特性,借此提升大型项目的可维护性。你可以用原生 JS 写网页,也可以用 Angular 构建企业级应用——二者定位不同,不互斥,也不替代。
简单说:
Angular 有自己独特的设计哲学:强调可预测性、可测试性和长期可维护性。例如它的变更检测默认采用自上而下的树形遍历(可通过 OnPush 优化),它的模块系统(NgModule)曾是早期核心,虽在 v14+ 后逐步弱化,但仍影响着代码组织方式。
如果你需要快速上线小项目,可能觉得 Angular “太重”;但如果你在开发银行后台、医疗系统这类多人协作、生命周期长的应用,它的约束反而会减少决策成本和技术债。